MySQL

MySQLで作成日と更新日の新しい方を使ってソートしたい

MySQLの作成日と更新日で新しい方を先に出したいときってあるじゃないですか。 そんなときはGREATEST。 SELECT * FROM `table` ORDER BY GREATEST(`created_at`, `updated_at`) DESC +---------------------+---------------------+ | created_at | updated_…

SQLのSELECT * FROM TABLEの読み方

「SELECT * FROM」を「セレクトオールフロム」って発音したら、 え?オールって読むの?って聞かれた。 まじか?私だけか?やばい!恥ずかしい! 何?「セレクトアスタ」?「セレクトこめ」? というわけでググった。でも見つからない。 SQLは「シークェル」…

MySQLでJOINとINNER JOINって同じ?

JOINとINNER JOINが同じっぽいけど本当に同じか不安だから調べた。 https://dev.mysql.com/doc/refman/5.6/ja/join.html MySQL では、JOIN、CROSS JOIN、および INNER JOIN は構文上同等です (互いに置き換えることができます)。標準 SQL では、それらは同等…

FuelPHPのクエリビルダのSQLを確認したい

FuelPHPのクエリビルダで複雑なクエリを書いていて、 本当に思った通りに書けてるの?と心配になったらSQLを表示して確認する。 $query = DB::select()->from('table'); print $query->compile(); // SELECT * FROM `table` printとか書きたくないって時は、…

MySQLでNULLが最後になるようにソートしたい

MySQLでNULLが入っていた時のソートを思い通りにしたい。 昇順でNULLが頭 ORDER BY `name` ASC +------+ | name | +------+ | NULL | | ア | | イ | +------+ 降順でNULLが最後 ORDER BY `name` DESC +------+ | name | +------+ | イ | | ア | | NULL | +--…