複雑なクエリ

MySQL

あるテーブルのあるフィールドの値が別のテーブルのあるフィールドに一致するものが ないものだけ抜き出す方法。

例えば、毎日の売り上げを記録した"days"というテーブルと、祝日をの情報を持ったテーブル"holiday"があるとします。ここで、祝日以外の日の売り上げ平均を見たい場合、以下のようにすることで抽出できます。/
MySQL

テーブルの結合2(等価結合)

単純結合だと無駄な行がたくさんできてしまいます。そこで登場するのが等価結合で、二つの表について一致している行のみ結合させます。member表に追加で各メンバーの出身地の人口(population)を表示させるにさせる例を以下に示します。/
MySQL

テーブルの結合1(単純結合)

結合には以下のように種類がいくつかあります。単純結合等価結合非等価結合外部結合再起結合今回はこの中で、単純結合のご紹介をします。まず、以下の二つのテーブルがあるとします。これら二つを単純結合すると「x」の行数のテーブルが出来上がります。テー...
MySQL

副問い合わせ(3)

これまでは、where句において副問い合わせを使用しましたが、FROM句でも使えます。「複数条件での検索」では以下のようなこれを、副問い合わせを使って以下のようにもできます。/
MySQL

副問い合わせ(2)

副問い合わせの結果が1列の場合の例は出しましたが、結果が複数列の場合の例を示します。以下の例では、saekiさんと年齢と出身地が同じメンバーを抽出します。/
MySQL

副問い合わせ(1)

例えば、miuraさんと同じ都道府県に住んでいるメンバーを表示したい場合、mysqlへのアクセスを2回行う必要があります。1回目は以下のような命令で、miuraさんのaddressを確認します。2回目は、1回目のクエリで得られた結果を元に以...