假设我有两个表,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/

10-10 02:54