比较我有两个表
SQL查询与另一列
table_inventory
List item
inventory_rack_key(primarykey)
node_key
rack_id
inventory_item_key
in_coming_qty,locked_qty
quantity
table_item
inventory_item_key(primary key)
item_id,product_zone
此处提供的表例如DB TABLES
我需要查询找出这些项目对于其(net_qty)即差异b/w总和为in_coming_qty
& quantity
& locked_qty
为负数。排列方式node_key,rack_id, item_id,net_qty
注意:每个不同的集合{node_key,rack_id, item_id,net_qty}
将只有1行输出。 对于例如:{node_key,rack_id, item_id}
= {ABD101,RK-01,562879}在中有4行,table_inventory 但输出net_qty = -78(单行)。
我提出的查询是给我结果,但我们可以用其他方式吗?
SELECT l.node_key,
l.rack_id,
i.item_id,
(SUM(l.quantity + l.in_coming_qty) - SUM(l.locked_qty)) AS net_qty
FROM table_inventory l,
table_item i
WHERE l.inventory_item_key = i.inventory_item_key
GROUP BY l.node_key,
l.rack_id,
i.item_id
HAVING SUM(l.quantity + l.in_coming_qty) - SUM(l.locked_qty) < 0
为什么你的答案不可接受? – mwigdahl
@mwigdahl我的答案是正确的,但有没有其他方式可以做同样的工作 – 2FaceMan
如果你当前的解决方案没有直接的问题(比如不一致的结果,太慢等),你可以考虑在http:// codereview上发布它。 stackexchange.com/,这是针对这样的问题。 –