Re: minus and intersect functionality
From: David Portas <REMOVE_BEFORE_REPLYING_dportas_at_acm.org>
Date: Tue, 11 Nov 2003 22:34:26 -0000
Message-ID: <vYmdnQOoWZL6_iyiRVn-sA_at_giganews.com>
Date: Tue, 11 Nov 2003 22:34:26 -0000
Message-ID: <vYmdnQOoWZL6_iyiRVn-sA_at_giganews.com>
A generalised minus query using NOT EXISTS:
SELECT symbol
FROM symbol_table
WHERE NOT EXISTS
(SELECT *
FROM trade
WHERE tsymbol = symbol_table.symbol)
Alternatively, "Minus JOIN", assuming the Symbol column is unique in both tables:
SELECT S.symbol
FROM symbol_table AS S
LEFT JOIN trade AS T
ON S.symbol = T.tsymbol
AND T.tsymbol IS NULL
Generalised intersection, using EXISTS:
SELECT symbol
FROM symbol_table
WHERE EXISTS
(SELECT *
FROM trade
WHERE tsymbol = symbol_table.symbol)
Or just an INNER JOIN if Symbol is unique in both tables:
SELECT S.symbol
FROM symbol_table AS S
JOIN trade AS T
ON S.symbol = T.tsymbol
-- David Portas ------------ Please reply only to the newsgroup --Received on Tue Nov 11 2003 - 23:34:26 CET