Arrow
Arrow
Slider

外部結合をやってみよう

リレーションを張れば複数のテーブルからデータを取り出せます。ただ、この方法では、取り出せないデータもあります。テーブルを結合する方法を変えてみましょう。そうすると片方のテーブルには存在しないデータであっても、結果に表示させることができます。外部結合というのは、両方のテーブルにデータが存在していないと、結合されずにデータは出てこないということになります。外部結合では、データが一方のテーブルにあれば、必ず表示されるというリレーションを作ることができます。外部結合には、LEFT JOIN…ONを利用します。外部結合というのは、SQLの構文が変わったように感じますが、内部結合の説明を簡単にしたためです。LEFT JOINとほとんど同じでINNERとなるのが、内部結合です。ただ、これを使うとSQLが少し複雑で書式が少し冗長になってしまいます。外部結合を使うときというのはあまりありません。なので、使うときはLEFT JOIN…ONを攻略するとよいと思います。SQLには他にも便利なものがあります。「DISTINCT」は「重複をなくす」ものです。「BETWEEN」は「間を示す」です。「IN」は「複数の値を一気に指定する」です。「LIMIT」は「件数を制限する」です。「AS]は「カラムに別名をつける」です。makers、my_items、cartsのそれぞれのテーブルをつなぎ合わせると、商品の販売状況を多い順に生産者、商品名とともに表示するというようなものが作ることができます。SQLというのは、かなり複雑な検索条件を作り出すことができることが分かると思います。検索やリレーションをいろいろ試してみましょう。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です