解释一下这个 过程是如何查询的 Select * from #T a where not exists(select 1 from #T where Name=a.Name and ID<a.ID)这个过程是如何执行的呢 ?请详细说明 谢谢~! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 假设数据有为name,ida,1a,2b,1外部查询先将a,1这条数据进入子查询判断筛选,子查询中查询name=a,id<1的数据是不存在的,那么根据not exists,这条数据是要查询的数据,接下来a,2这条数据,子查询中查询name=a,id<2的数据是存在的,根据not exists,这条数据不是要查询的数据,所以过滤掉最终你的这个语句执行的结果就是,查询name中取最小id的整条数据 首先选外层查询中#T表的第一个元组,根据它与内层查询相关的属性值Name值处理内层查询。若内层查询结果为空,则外层查询的where子句返回值为真,于是取外层查询的该元组放入结果表。然后再取#T表中的下一个元组,重复这个过程,直至外层#T表全部检查完为止。 注意 not exists 返回的布尔值。 外层元素,依次嵌套查询。 字符比較規則,不是按ASCII比較嗎? Sqlserver 全文索引 中文分词 的问题 sql 邹老大,请教一下object_id问题,能取值linked server中的数据表吗? 把一台机器上的SQL 2000数据库实时的同步插入到另一台机器上的数据库 sql恢复求救!!!! sqlserver 2000数据库连接 关于access的问题,请各位帮帮忙呀!!! 关于自动增加和删除作业的过程问题 请问在DLL里怎么和一个数据库通信? 请教大神 这个事务该怎么实现 Windows上用XAMPP搭WordPress的问题(有一步关于建立mysql数据库)
name,id
a,1
a,2
b,1
外部查询先将a,1这条数据进入子查询判断筛选,子查询中查询name=a,id<1的数据是不存在的,那么根据not exists,这条数据是要查询的数据,
接下来a,2这条数据,子查询中查询name=a,id<2的数据是存在的,根据not exists,这条数据不是要查询的数据,所以过滤掉
最终你的这个语句执行的结果就是,查询name中取最小id的整条数据
首先选外层查询中#T表的第一个元组,根据它与内层查询相关的属性值Name值处理内层查询。
若内层查询结果为空,则外层查询的where子句返回值为真,于是取外层查询的该元组放入结果表。
然后再取#T表中的下一个元组,重复这个过程,直至外层#T表全部检查完为止。