sql语句查询中exists中为什么要用select 1?

2025-03-24 18:55:13
推荐回答(5个)
回答1:

如果有查询结果,查询结果就会全部被1替代(当不需要知道结果是什么,只需要知道有没有结果的时候会这样用),可以提高语句的运行效率,在大数据量的情况下,提升效果非常明显

回答2:

select 1

select *
或者select 某个字段

此处,从功能上来说是等效的,主要是用来是否有返回行,如果有,则exists成立。

至于你说的“恒成立”,我看不出来。

回答3:

Select 后面可以随意跟,写0或者1只是为了1,方便;2,效率稍高

回答4:

exists里面的select后面用什么都可以,可以用*,也可以用一个存在的列名,关键是看where条件的记录是否存在,使用select 1也可以,效果是一样的。

回答5:

你看清楚后面的语句,有a。也有b.俩个表是相互关联的,所以后面的语句不是恒成立的,select 1也要后面条件成立才又结果