個々の常識
改行して書かれる事もあるSQL文。
その記述方法についてを、当たり前や思い込み?と実用面から議論しました。
じょしかい!!トーク【活動議事録】 第一弾です。
鈴木 和音 | 「おはよう御座います~」 |
---|---|
佐藤 千夏 | 「和音ちゃん。おはよう~」 |
田中 雪菜 | 「おっはよ~!」 |
|
|
田中 雪菜 | 「じゃあ~全員揃ったところで、今日の議題は何にしよっか」 |
佐藤 千夏 | 「SQL文で取得フィールドが複数あって改行して書く場合、取得フィールドの区切り文字のカンマはフィールド名の前と後ろどっちに書くのか?ってのはどうかしら」 |
鈴木 和音 | 「千夏先輩。どうしたんですか?突然。 そんなの後ろに書くに決まってるじゃないですか」
SQL > SELECT
`table_name`.`field_1`,
`table_name`.`field_2`,
`table_name`.`field_3`,
`table_name`.`field_4`,
`table_name`.`field_5`
FROM
`table_name`
|
佐藤 千夏 | 「・・・・・・」 |
鈴木 和音 | 「もしかして、千夏先輩は前に書く派なんですか?」 |
佐藤 千夏 | 「そうね。 わたしは前にカンマを書くわ」 |
田中 雪菜 | 「そーなんだ。 前に書きたいコダワリとかあるの?」 |
佐藤 千夏 | 「ん~。 前方カンマの方が、プログラム内のクエリ文とか修正し易くないかな?」 |
田中 雪菜 | 「それって、一番前の取得フィールドを変更するか一番後ろの取得フィールドを変更するかの差だけじゃない? SQL > SELECT `table_name`.`field_1` (後方カンマ) (前方カンマ) `table_name`.`field_2` (後方カンマ) (前方カンマ) `table_name`.`field_3` (後方カンマ) (前方カンマ) `table_name`.`field_4` (後方カンマ) (前方カンマ) `table_name`.`field_5` FROM `table_name` こんなふうに」 |
佐藤 千夏 | 「うん。 だけどね、コピペで行を貼り付けたり追記したりとSQL文を編集する場面って
SQL > SELECT
`table_name`.`field_1`
,`table_name`.`field_2`
,`table_name`.`field_3`
,`table_name`.`field_4`
,`table_name`.`追記されたフィールド`
FROM
`table_name`
前よりも後ろの方がずっと多いと思うのよね」 |
鈴木 和音 | 「あー。 確かに確かに~。 それはあるかもしれませんね」 |
田中 雪菜 | 「いやいや、中間じゃない?」 |
佐藤 千夏 | 「今は前か後ろかの話よね? |
鈴木 和音 | 「心の声?」 |
田中 雪菜 | 「本音!?) |
佐藤 千夏 | 「間違えた! 後ろの方が取得フィールドの追加や変更が多い!よ」 |
鈴木 和音 | 「う~ん。どうなんですかね。 あっ、でもでも、カンマを後ろに書いた方がSQL文は見やすい気がします!」 |
佐藤 千夏 | 「私は、前にカンマの方が見やすいな~って感じたのよね」 |
鈴木 和音 | 「でもでも~、JavascriptやPHPの配列なんかも普通は後方にカンマ書いてますよね。 <?php $array = array( 1 => "a", "1" => "b", 1.5 => "c", true => "d", ); ?> |
佐藤 千夏 | 「・・・・・・。 う~ん。 確かにそう言われると」 |
田中 雪菜 | 「お? 千夏、納得?」 |
鈴木 和音 | 「そういうゴチャ混ぜなルールって、千夏先輩のA型の血が絶対許さない感じじゃないですか」 |
佐藤 千夏 | 「私、このA型の性格が嫌なの! |
鈴木 和音 | 「でも先輩、血液型占い(血液型性格分類)ってホント当たらないですよね~」 |
田中 雪菜 | 「今それを言うのかよ!」 |
|
|
鈴木 和音 | 「結局、後方カンマが一般的な作法ってことですかね」 |
佐藤 千夏 | 「前に書いた方が開発面では便利よね? さっきも一部同意してたし」 |
鈴木 和音 | 「確かにそれはあるかもしれませんけど、読み難いですし何かこうスマートじゃないですね。 |
佐藤 千夏 | 「和音ちゃんが後方カンマ使っていて、FROM句の前のカンマを消し忘れてシンタックスエラーになっているのを良く見るけど……」 SQL > SELECT `table_name`.`field_1` `table_name`.`field_2`, `table_name`.`field_3`, FROM `table_name` ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM |
鈴木 和音 | 「えっ……」 |
田中 雪菜 | 「……」 |
佐藤 千夏 | 「……」 |
[宣伝]
MySQLやPHP書籍のご紹介です!
2013年08月21日発売 | わたしも読んでいます!! | 高評価(★★★★★) | 漢(オトコ)のコンピュータ道 |
---|---|---|---|
初めての PHP、MySQL、JavaScript&CSS |
実践ハイパフォーマンスMySQL |
基礎からのMySQL 改訂版 (プログラマの種シリーズ SE必修!) |
MySQL Cluster構築・運用バイブル |