嗨!!我需要搜索 stock.id,其中所有 pedidos.cantidad 的总和 >= 大于 $sale
我已经写了这个,但似乎不起作用:
SELECT *
, SUM(pedidos.cantidad) as total
FROM stock
INNER
JOIN pedidos
ON stock.producto = pedidos.producto
WHERE pedidos.producto = '$sale'
AND total >= stock.cantidad
ORDER
BY stock.id ASC
LIMIT 1
我的 table : 库存
ID |产品 |候选者
足趾
ID |产品 |洛特|候选者
stock.producto 需要 = to pedidos.producto AND stock.id = pedidos.lote 所以我需要这个: SELECT stock.id WHERE (stock.cantidad -SUM(pedidos.cantidad)) >= $sale AND stock .producto = pedidos.producto AND stock.id = pedidos.lote
确实,当我注册新销售时,我需要找到 stock.id,其中 (stock.cantidad - SUM(pedidos.cantidad)) IS >= $new_sale 将该 stock.id 放入新输入中关于pedidos.lote
因为我说西类牙语,所以试图解释我需要什么对我来说有点困难,请为此道歉
最佳答案
在不知道您的表和数据结构的情况下..尝试一下:
SELECT Stock.ID
FROM Stock
WHERE Stock.Producto IN (
SELECT producto
FROM pedidos
GROUP BY producto
HAVING SUM(pedidos.cantidad) >= 100 // Your sale value
)
它的作用是: 获取所有 Producto 记录,当组合在一起时,其总和 > $sale,然后查找找到该 Producto 的所有 Stock.ID。
编辑
SELECT Stock.ID
FROM Stock
WHERE Stock.Producto IN (
SELECT Stock.ID, SUM(Pedidos.Cantidad)
FROM Pedidos
INNER JOIN Stock ON Stock.ID = Pedidos.Lote
AND Stock.Producto = Pedidos.Producto
GROUP BY Stock.ID, Pedidos.Producto
HAVING SUM(Pedidos.Cantidad) > 1000 --Sale Amount
)
关于php - 内连接,选择 SUM 和Where,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45599413/