[英]Compare a table with itrself in SQL?
以下查询的输出是:
查询:
SELECT CategoryID
FROM Categories
WHERE EXISTS (SELECT CategoryID FROM Categories as c WHERE c.CategoryID < Categories.CategoryID);
输出:
2
3
4
表类别:
CategoryID CategoryName
1 Beverages
2 Condiments
3 Confections
4 Dairy Products
我想跟踪子查询(SELECT CategoryID FROM Categories as c WHERE c.CategoryID < Categories.CategoryID)
。 记录是否一一比较? 为什么ID 1没有出现在输出上?
EXISTS
用于子查询中任何记录的存在。
当您使用SELECT CategoryID FROM Categories as c WHERE c.CategoryID < Categories.CategoryID
CategoryID = 1
没有任何行匹配
如果要获得CategoryID = 1
尝试使用
c.CategoryID <= Categories.CategoryID
代替
c.CategoryID < Categories.CategoryID
包含CategoryID = 1
行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.