mamori017.log

雰囲気でクソコードを書いています

SQL

NULLは比較演算子では検索できない

SQL

NULLに対して検索を行いたい場合はIS (NOT) NULLを使用しなければいけません。 NULLは通常の値とは異なる*1ので、NULLに対して比較演算子("="や"<>")を使用しても結果に反映されません。 ColumnA ColumnB 100 100 200 NULL 300 300 400 400 上記のテーブルに…

SQLでAVGとCOUNTはNULLを無視する

SQL

ColumnA ColumnB 100 100 200 200 300 300 400 NULL 500 500 テーブルが上記の状態のとき、ColumnA、ColumnBに対して集合関数を使用してみると以下のような結果が出力される。 ColumnA SUM MAX MIN AVG COUNT 1500 500 100 300 5 ColumnB SUM MAX MIN AVG CO…

UPDATE文でCASE式を使う

SQL

SQLのUPDATE文で、別の列の状態から更新する列の値を設定したいときなどにはSET句にCASE式が使える。 UPDATE table SET column_A = CASE WHEN column_B = 0 THEN 'column_B is 0' WHEN column_B = 1 THEN 'column_B is 1' WHEN column_B = 2 THEN 'column_B …