記錄一下第一次寫 50行 SQL程式碼
這 是一個電商項目,做的是報表的展示,我還以為要請求幾次,結果,用一個SQL全部查完了
下面是目標效果圖

這是我的SQL程式碼
SELECT
product.NAME,
product.price,
pros.order_num,
product.price * pros.count_product sum_price,
ads.create_time,
ads.contact_address,
ads.contact_name,
ads.contact_mobile
FROM
product,
(
SELECT
order_num,
product_id,
COUNT(product_id) count_product
FROM
order_item
WHERE
order_num = "O2020100500001"
GROUP BY
product_id
) pros,
(
SELECT
of.create_time,
ot.product_id pid,
of.contact_address,
of.contact_name,
of.contact_mobile
FROM
order_item ot,
order_info of
WHERE
of.order_num = "O2020100500001"
AND ot.order_num = "O2020100500001"
) ads
WHERE
id IN (
SELECT
product_id
FROM
order_item
WHERE
order_num = "O2020100500001"
GROUP BY
product_id
)
AND id = pros.product_id and id = ads.pid
group by id
這是我的查詢效果

總結
- 在sql之中,可以使用結果集做為表來查詢(以前會,只不過忘了)
- 在sql之中,可以使用這個嵌套查詢來做為複雜查詢(會犧牲效率,但鬼換取的是一勞永逸)