我有下表:compare
。我需要做一个内部联接与products
表:SQL满足条件时排除结果吗?
idCompare idProduct dateStamp
1 1 2011-12-12
2 1 2011-12-10
3 1 2012-01-05
我想从我的结果排除idproduct的其中是否有个约会中说7天。
我使用NOT IN尝试和NOT EXISTS没有成功
SELECT products.idProduct
FROM products INNER JOIN
compare ON products.idProduct = compare.idProduct
WHERE
(products.idProduct = '1') AND (products.idProduct
NOT IN
(SELECT idProduct
FROM compare
WHERE (products.idProduct = compare.idProduct) AND
(dateStamp < DATEADD(DAY, - 7, GETDATE()))))
即使您将其定义为“1”,您仍在选择'products.idProduct'。这是故意的吗? – kba 2012-01-06 22:21:15
我只是测试这个1例子,最终我会删除(products.idProduct ='1') – Standage 2012-01-06 22:24:19
你不需要加入'ON products.idProduct = compare.idProduct'吗?你也希望在最后一行用'>'或'> ='代替'<',不是吗? – 2012-01-06 22:24:24