MySQL學習筆記:使用子查詢

本文爲本人學習書籍《MySQL必知必會》筆記系列,歡迎持續關注,有問題隨時留言評論,一起探討學習~

14 使用子查詢

查詢(query):

任何SQL語句都是查詢,但該術語一般指SELECT語句。目前的SELECT語句是簡單查詢,即從單個數據庫表中檢索數據的單條語句。而子查詢(subquery)是嵌套在其他查詢中的查詢。
例如:查找“小白熊”牌溫奶器的商品有多少個。需要以下三步:
1.在品牌表brand找到“小白熊”的BrandId;
2.在品類表product_category找到溫奶器的CategoryId;
3.在商品表product中COUNT對應BrandId和CategoryId的行數,即爲結果。實際上,第1-2步可以嵌套在第三步的語句中。

SELECT ID 
FROM brand
WHERE Name='小白熊';
SELECT ID
FROM product_category
WHERE Name='溫奶器';
SELECT COUNT(*) AS num1
FROM product 
WHERE BrandId=-9014347894162505346 AND CategoryId IN (492498760596997249,                                                      615432733113008653);
#實際上,第1-2步可以嵌套在第三步的語句中。即爲包含了子查詢。
SELECT COUNT(*) AS num1
FROM product
WHERE BrandId=(SELECT ID
               FROM brand
               WHERE Name='小白熊') AND CategoryId IN (SELECT ID
                                                    FROM product_category
                                                    WHERE Name='溫奶器');
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章