我对sql有一个普遍的疑问。究竟“前11”会做些什么呢?以下查询的含义是什么?
select top 1 1 from Worker W where not exists (select 1 from Manager M where M.Id = W.Id)在sql server查询中选择"TOP 11“和"SELECT 1”之间的区别是什么?
发布于 2013-10-14 11:57:20
SELECT TOP 1意味着在结果集中选择第一条记录
SELECT 1意味着返回1作为结果集
SELECT TOP 1 1 FROM [SomeTable] WHERE <SomeCondition>意味着,如果条件为真,并且从select返回任何行,则只返回顶1行,只返回该行的整数1 (不返回数据,只返回整数1)。
发布于 2015-03-18 23:54:16
在下面,第一个"1“是”前1“的一部分,意思是在得到一个结果之后停止。第二个"1“只是因为作者真的不在乎结果是什么。
SELECT TOP 1 1 FROM WORKER本质上与
SELECT TOP 1 * FROM WORKER唯一的问题是,在查询的“存在”部分中,它是否比仅仅
SELECT 1 FROM Manager...发布于 2013-10-14 11:58:34
请求查找是否至少有一个员工(前1位)没有经理。SELECT 1子句充当“返回真”。
如果有管理器,请求select 1 from Manager M where M.Id = W.Id返回1。如果没有管理器,则请求返回NULL。
https://stackoverflow.com/questions/19359691
复制相似问题