假设我有两个表,orderdetails 和 orders。
我想打印订单日期、订单状态和总价。
在 orderdetails 表中,有 orderNumber、quantityOrdered、priceEach 和 productCode。
在订单中,有状态和订单号。
我试过这段代码,但它不起作用。
SELECT orderDate, status, (SELECT SUM(quantityOrdered * priceEach) AS prices FROM orderdetails GROUP BY orderNumber)
FROM orders o, orderdetails od
WHERE od.orderNumber = o.orderNumber
最佳答案
使用连接:
SELECT t1.orderDate,
t1.status,
t2.prices
FROM orders t1
INNER JOIN
(
SELECT orderNumber,
SUM(quantityOrdered * priceEach) AS prices
FROM orderdetails
GROUP BY orderNumber
) t2
ON t1.orderNumber = t2.orderNumber
关于mysql - 子查询在 select 语句中返回多于 1 行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40328334/