電子書籍の厳選無料作品が豊富!

SELECT * FROM tb1 AS a JOIN tb1 AS b;
ですが?
SELECT *➡「SELECT」句は「データの問い合わせ」の意味があり
、それに伴い「*」句は「全体」意味です。
なので、ここではテーブル「tb1」の指していて、要約すると
「tb1のデータ全体に対して問い合わせます。」の意味となる。

以上の解説は私が作りましたので、専門家の解説ではありません!

そこで「FROM」句をつける意味を知らべています。
 SELECT * tb1 AS a JOIN tb1 AS b;
とした場合、エラーとなりました。
 この場面で わざわざ 「FROM」句を設けた意味は何ですか?

よろしくお願いいたします。

質問者からの補足コメント

  • うれしい

    ちゃんとご回答くださった皆様ありがとうございました。
    それから ググって調べています。
     それなりの回答がありました。

    「*」のみであれば特にFROMが無くても良いと思われますが、
    例えば「SELECT C tb1」と書いた場合、tb1はCの別名と解釈
    されるので、「SELECT C tb1 FROM tb1」書く必要が有ります。
     どのような書き方でも、問題なく動くように、テーブル名の前
    にはFROMを付けます。条件によって文法が変わる物は初心者泣
    かせですので、初心者でも理解し易い単純な文法に成っています。

      補足日時:2021/08/23 06:38
  • うれしい

    第二

    それがSQLの文法だからです。
    SELECTは複数のテーブルを結合(JOIN)して読込みますが、
    必ずクエリーの起点となるテーブルが一つあります。
    それをFROMで示します。
    そのテーブルに二つめ以降のテーブルをくっ付けていくわけ
    ですが、そのときは、内部結合(INNER JOIN)、外部結合
    (LEFT OUTER JOIN/RIGHT OUTER JOIN)、直積(CROSS JOIN)
    というように結合の方法を示します。
    起点となるテーブルは、結合方法を書く必要がないので、JOINの代わりに
    FROMを使うわけです。

      補足日時:2021/08/23 06:40

A 回答 (2件)

「FROM」なのは「英語っぽく書けるようにするため」ですが、「わざわざ」という意味では、SQL文の構文解析が容易になるからだと考えます。

    • good
    • 1
この回答へのお礼

ご回答くださいまして、ありがとうございました。
了解です。
今後ともよろしくお願いいたします。

お礼日時:2021/08/23 06:41

意味を詮索するのは無意味です。



SELECTの後にフィールド名を書く。
FROMの後にテーブル名を書く。

そういう文法です。
    • good
    • 1
この回答へのお礼

ご回答くださいまして、ありがとうございました。
了解です。
今後ともよろしくお願いいたします。

お礼日時:2021/08/23 06:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!