Reputation: 11
So I have 2 tables Named : Stock and Order
table : Stock
+-----------+-----------+
| Item | Number |
+-----------+-----------+
| A | 20 |
| B | 7 |
| C | 11 |
| D | 13 |
+-----------+-----------+
table : Order
+-----------+-----------+
| Item | Number |
+-----------+-----------+
| A | 8 |
| B | 2 |
| C | 5 |
| D | 9 |
+-----------+-----------+
I need to subtract the column number from stock to order.
The result would be :
table : Stock
+-----------+-----------+
| Item | Number |
+-----------+-----------+
| A | 12 |
| B | 5 |
| C | 6 |
| D | 4 |
+-----------+-----------+
I have tried using
SELECT item , number=
(
(SELECT number FROM stock)-(SELECT number from order))
FROM order;
Unfortunately it does not work, please help me! And pardon for the formatting.
Upvotes: 0
Views: 268
Reputation: 15379
If two tables are in 1:1 relation -> try this:
SELECT s.item, s.number - o.number
FROM stock s
JOIN order o
ON s.item = o.item
Otherwise:
SELECT s.item,
s.number - ISNULL(
(SELECT SUM(o.number)
FROM order o
WHERE o.item = s.item), 0)
FROM stock s
Upvotes: 2
Reputation: 14389
SELECT B.Item,A.Number - B.Number FROM
Stock A
INNER JOIN Order B
ON A.Item=B.Item
Upvotes: 2