MySQL の Case ステートメントを使用したデータの圧縮
リレーショナル データベースに格納されたデータを操作する場合、次の内容を操作すると便利です。特定の基準に基づいた列。ここで CASE ステートメントが活躍します。これにより、条件式に基づいて列に値を動的に割り当てる方法が提供され、データを再構築して分析とレポートを強化できるようになります。
例: 条件付き列の生成
id、action_type、action_Heading、およびアクション量。 2 つの新しい列、Income Amt と Expense Amt を生成するには、CASE ステートメントを活用して、action_type 列に基づいて条件付きでそれらの列を設定できます。
SELECT id, action_heading, CASE WHEN action_type = 'Income' THEN action_amount ELSE NULL END AS income_amt, CASE WHEN action_type = 'Expense' THEN action_amount ELSE NULL END AS expense_amt FROM tbl_transaction;
このクエリは、次のような出力を生成します。
ID | Heading | Income Amt | Expense Amt |
---|---|---|---|
1 | ABC | 1000 | NULL |
2 | XYZ | NULL | 2000 |
ご覧のとおり、[Income Amt] 列には収入トランザクションの値が入力され、[Expense Amt] 列には次の値が入力されています。経費トランザクション。
代替構文
MySQL は、条件付き操作を処理する CASE ステートメントの代替として IF() 関数も提供します。ただし、この場合は CASE ステートメントの方が汎用性が高く、さまざまなデータベース エンジン間で移植できるため、推奨されます。
以上がCASE ステートメントを使用して MySQL でデータを圧縮するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。