【MySQL必知必会】第14章:サブクエリ
914 ワード
14.1サブクエリ
サブクエリは、他のクエリにネストされたクエリです. WHERE句でサブクエリを使用すると、強力で柔軟なSQL文を記述できます. ネスト可能なサブクエリの数には制限はありませんが、実際の使用ではパフォーマンスの制限により、サブクエリをあまりネストできません.
14.2ワードネタ検索
サブクエリ文を直接ネストできるほか、サブクエリのフィールドをネストして取得することもできます.注意すべきは、ここでは完全限定列名「order.」を使用していることです.データベースがフィールド をすばやく配置できるようにする完全修飾カラム名を使用しない場合、データの他のテーブルに類似のcust_が存在する場合idのネーミングが同じ場合,他の結果 を容易に検索できる.
サブクエリは、他のクエリにネストされたクエリです.
SELECT cust_name, cust_contact
FROM customers
WHERE cust_id IN (SELECT cust_id
FROM orders
WHERE order_num IN (SELECT order_num
FROM orderitems
WHERE prod_id = 'TNT2'));
14.2ワードネタ検索
サブクエリ文を直接ネストできるほか、サブクエリのフィールドをネストして取得することもできます.
SELECT cust_name,
cust_state,
(SELECT COUNT(*)
FROM orders
WHERE orders.cust_id = customers.cust_id) AS orders
FROM customers
ORDER BY cust_name;