0
これは技術的な質問ではなく、むしろ言語がそのように設計されている理由を疑問視しています。なぜSQLで列を選択したいのですが、それでテーブルが参照されますか?
私はSQLを学んできましたが、私が大変気になっていたことの1つは、あなたが望むカラムの名前をつけて、それから取得したいテーブルの名前を指定する方法です。私にとっては、あなたが親の体(テーブルです)を参照し、それが持つ列を参照する方が意味があります。しかし、SQLはユーザーにこれを逆向きにさせるように思われる。どうして?
なぜこの言語がこのように設計されたのか不思議です。
SELECT column
FROM table
なぜ
FROM table
SELECT column
列選択の前に 'WHERE'ヒットがあることを忘れないでください。 '
デザイナーはそれほど良いものではなかったからです。 –
「キッチンのバスケットから、斑点や傷がないので、リンゴとオレンジを選ぶことができますか?」ブリー。 – JNevill
答えて
this postが役に立ちます。
FROM
で始まるのは、クエリについて考える最も論理的な方法です(なぜSELECT
から何を知る前にSELECT
と書くのでしょうか?)。ただし、SQLガイドラインは、クエリがのコマンドであるかのように設計されています。したがって、あなたはSELECT
のデータをシステムに命令しており、さらにFROM
はそのコマンドを指定しています。もちろん、実際の実行は上記の字句および論理命令とは異なります。
出典
2017-12-12 19:40:59 Dan
これはコメントのために長すぎると問題は実際には適切ではありませんが、その理由は、(と思う)があります。
SQLは手続き型言語ではなく、記述言語です。 には、結果セットが生成されるが記載されています。そして、その結果セットを列ヘッダーを含むレポートとして考えることができます。
このように、基本的なクエリ構造では、これらの列ヘッダーが返されます。残りのクエリは、それらがどのように生成されるかを記述します。
出典
2017-12-12 19:26:28
SQLはある程度英語を模倣しようとするので、クエリを定式化するのは自然です。
英語では、「私は従業員の名前がほしい」と言っています。あなたは「私は従業員に自分の名前が欲しい」とかそういうものは言わないでしょう。
あなたが正しいですが、クエリが実行の順序を表すことをお勧めしました。そして「従業員のテーブルから私は名前を欲しい」という印はそれほど遠くないでしょう:-)
出典
2017-12-12 19:38:42
関連する問題