首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Select中Top 1和Select 1之间的差异

SQL Select中Top 1和Select 1之间的差异
EN

Stack Overflow用户
提问于 2013-10-14 11:55:40
回答 5查看 57.7K关注 0票数 38

我对sql有一个普遍的疑问。究竟“前11”会做些什么呢?以下查询的含义是什么?

代码语言:javascript
复制
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”之间的区别是什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-10-14 11:57:20

SELECT TOP 1意味着在结果集中选择第一条记录

SELECT 1意味着返回1作为结果集

SELECT TOP 1 1 FROM [SomeTable] WHERE <SomeCondition>意味着,如果条件为真,并且从select返回任何行,则只返回顶1行,只返回该行的整数1 (不返回数据,只返回整数1)。

票数 57
EN

Stack Overflow用户

发布于 2015-03-18 23:54:16

在下面,第一个"1“是”前1“的一部分,意思是在得到一个结果之后停止。第二个"1“只是因为作者真的不在乎结果是什么。

代码语言:javascript
复制
SELECT TOP 1 1 FROM WORKER

本质上与

代码语言:javascript
复制
SELECT TOP 1 * FROM WORKER

唯一的问题是,在查询的“存在”部分中,它是否比仅仅

代码语言:javascript
复制
SELECT 1 FROM Manager...
票数 16
EN

Stack Overflow用户

发布于 2013-10-14 11:58:34

请求查找是否至少有一个员工(前1位)没有经理。SELECT 1子句充当“返回真”。

如果有管理器,请求select 1 from Manager M where M.Id = W.Id返回1。如果没有管理器,则请求返回NULL。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19359691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档