Это то, что вам нужно?
DECLARE @Storage TABLE(ID VARCHAR(50), name VARCHAR(250) )
DECLARE @Orders TABLE(code VARCHAR(50), qty INT, type VARCHAR(50))
INSERT INTO @Storage VALUES
('1234','product1')
, ('1235','product2')
, ('A123','product3')
INSERT INTO @Orders VALUES
('1234',10,'order')
, ('1234',10,'quote')
, ('1234',10,'order')
, ('A123',15,'order')
, ('1235',13,'order')
SELECT
s.ID
, s.name
, SUM(o.qty) TotalQty
FROM
@Storage s
JOIN @Orders o ON o.code = s.ID AND o.type = 'order'
WHERE
s.ID IN('1234','A123')
GROUP BY
s.ID
, s.name
ОБНОВЛЕНИЕ
Вы обновили свой пост, добавив больше логики, чего раньше не было, однако я обновил запросдля тебя ..
DECLARE @Storage TABLE(ID VARCHAR(50), name VARCHAR(250) )
DECLARE @Orders TABLE(code VARCHAR(50), qty INT, type VARCHAR(50))
DECLARE @Prod_to_col TABLE(prod_id VARCHAR(50), col_id VARCHAR(50), col_qty INT)
DECLARE @Cols TABLE(col_id VARCHAR(50), name VARCHAR(250))
INSERT INTO @Storage VALUES
('1234','product1')
, ('1235','product2')
, ('A123','product3')
, ('1236','product3')
INSERT INTO @Orders VALUES
('1234',10,'order')
, ('1234',10,'quote')
, ('1234',10,'order')
, ('A123',15,'order')
, ('1235',10,'order')
, ('1235',10,'order')
, ('1236',2,'quote')
, ('1236',5,'order')
INSERT INTO @Prod_to_col VALUES
('1235','C101',2)
, ('1236','C102',1)
INSERT INTO @Cols VALUES
('C101','cname1')
, ('C102','cname2')
SELECT
c.col_id
, c.name
, SUM(o.qty) * MAX(ptc.col_qty) TotalQty
FROM
@Storage s
JOIN @Orders o ON o.code = s.ID AND o.type = 'order'
JOIN @Prod_to_col ptc ON ptc.prod_id = o.code
JOIN @Cols c ON c.col_id = ptc.col_id
--WHERE
-- s.ID IN('1234','A123')
GROUP BY
c.col_id
, c.name