我試圖撰寫一個子查詢,以便通過使用clients表中的client_id來檢索client name。
- 第1個查詢:
SELECT client_id, order_id, deadline, state FROM orders GROUP BY order_id
- 第二項查詢:
SELECT name FROM clients WHERE id=:client_id
- 第2個查詢作為第一個查詢的
子查詢會是什么樣子,以便顯示如下的最終結果,根據來自clients表的每個client_id與來自clients表的id匹配,添加name:
client_id - 來自orders表
order_id - 來自orders表
deadline - 來自orders表
state - 來自orders表
name - 來自clients表
grouped by order_id來自orders表
uj5u.com熱心網友回復:
如果我理解正確,你需要在你的結果集中獲得第二個表的name值。那么你就必須從兩個表中獲取數值。使用子查詢是一個解決方案:
SELECT o.client_id, o.order_id, o.dealer, o.state, c.name
FROM orders o, clients c
WHERE (c.id = o.client_id)
GROUP BY o.order_id。
uj5u.com熱心網友回復:
JOIN條款
SELECT o.client_id。
o.order_id,
o.截止日期。
o.狀態。
c.名稱
FROM orders o
join clients c on c.id = o.client_id
GROUP BY o.order_id
GROUP BY
SQL-92和更早的版本不允許在選擇串列、HAVING條件或ORDER BY串列中提到未在GROUP BY子句中命名的非聚合列的查詢。你最好使用這個:
SELECT o.client_id,
o.order_id,
o.截止日期。
o.狀態。
c.名稱
FROM orders o
join clients c on c.id = o.client_id
GROUP BY o.client_id。
o.order_id。
o.截止日期。
o.狀態。
c.名稱
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/306792.html
標籤:
