SQLコマンド」からの出題です。行)いずれも、id列はINTEGER型、val列はTEXT型である。次のSELECT文を実行した時に返される行数はいくつか。※この例題は実際のOSS-DB技術者認定試験とは異なります。解答と解説RDBMSではデータを正規化して複数の表に分けて格納するのが普通です。データを検索するときには、これら複数の表を結合して、あたかも1つの表であるかのようにして扱います。このときに使われるのがJOIN句です。←(結合条件)となります。t2.id;などと記述することで結合できます。行)となり、id=1の行だけが返されます。t1にはid=1の行が1つしかありませんが、t2には2つあります。この場合、id=1の行が2行になって返され、t1については同じ内容が繰り返し表示されることに注意してください。一方で、t1にはid=2の行がありますが、結合できる行がt2にありませんから、これは返されません。同じようにt2のid=3の行も返されません。このような一方のテーブルだけに存在する行も返して欲しい場合もあるでしょう。そんなときに使われるのが外部結合です。外部結合をするためには、JOINの前にLEFT/RIGHT/FULLの修飾を付加します。t2.id;とすると、t1には存在するがt2に存在しない行(つまりid=2の行)も返され、結果は以下のようになります。JOINとすると、これとは逆にt2に存在するがt1に存在しない行(id=3の行)も返されます。JOINとすると、これらの両方が返されます。結合元と結合先の列名が同じ時は、ON句の代わりにUSING句を使って記述を簡略化することができます。USINGの後に結合に使う列名を括弧で括り、以下のように記述します。ON句を使った時とは結果として返される列の数が違う(id列が統合される)ということにも注意してください。JOINとする方法もありますが、この場合、結合元と結合先で名前が同じ列がすべて結合対象となることに注意が必要です。val);と同等になってしまいます。今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。ご質問・ご意見はこちら※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。アーカイブを試験ごとにまとめています。ご紹介OSS-DB認定教材や教育機関について詳しくご説明いたします。受験準備をされていらっしゃる方々を対象に、無料技術解説セミナーの日程をお知らせしています。受験準備をされていらっしゃる方々を対象に、無料技術解説セミナーの日程をお知らせしています。メリット受験対策インタビューFAQ資料請求・お問い合わせプライバシーポリシーこの内容で送信します。よろしいですか?キャンセル。