2 つの整数フィールド ('value_a' を含む 'my_obj' テーブルのコンテキスト内)および「value_b」)、「value_a」が次の値に等しいインスタンスの割合を決定しようとします。 'value_b'.
最適なパフォーマンスと簡素化のために、次の修正されたクエリを検討してください:
SELECT property_name ,(count(value_a = value_b OR NULL) * 100) / count(*) AS pct FROM my_obj GROUP BY 1;
これこのアプローチでは、「count()」の機能を活用して「NULL」値を無視し、両方の値を確実に無視します。列が考慮されます。一致する値の数に 100 を掛け、合計数で割ることで、パーセンテージが計算されます。
SELECT property_name ,round((count(value_a = value_b OR NULL) * 100.0) / count(*), 2) AS pct FROM my_obj GROUP BY 1;
以上が単一の SQL SELECT ステートメント内の 2 つの列間で一致する値のパーセンテージを計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。