mybatis中#与$的区别 数据库中exists语句的用法

数据库中exists语句的用法的用法你知道吗?下面小编就跟你们详细介绍下数据库中exists语句的用法的用法,希望对你们有用。

数据库中exists语句的用法的用法如下:

SQL中EXISTS的用法

问题:查询学过编号为"01"并且也学过编号为"02"的课程的同学的信息

--方法1

Sql代码

select Student.* from Student , SC where Student.S# = SC.S# and SC.C# = '01' and exists (Select 1 from SC SC_2 where SC_2.S# = SC.S# and SC_2.C# = '02') order by Student.S#

EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False

例表A:TableIn

例表B:TableEx

(二). 比较使用 EXISTS 和 IN 的查询。注意两个查询返回相同的结果。

mybatis中#与$的区别 数据库中exists语句的用法

select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)

select * from TableIn where ANAME in(select BNAME from TableEx)

(三). 比较使用 EXISTS 和 = ANY 的查询。注意两个查询返回相同的结果。

select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)

select * from TableIn where ANAME=ANY(select BNAME from TableEx)

NOT EXISTS 的作用与 EXISTS 正好相反。如果子查询没有返回行,则满足了 NOT EXISTS 中的 WHERE 子句。

一种通俗的可以理解为:将外查询表的每一行,代入内查询作为检验,如果内查询返回的结果取非空值,则EXISTS子句返回TRUE,这一行行可作为外查询的结果行,否则不能作为结果。

EXISTS与IN的使用效率的问题,通常情况下采用exists要比in效率高,因为IN不走索引,但要看实际情况具体使用:

IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况。

  

爱华网本文地址 » http://www.aihuau.com/a/217661/55557109.html

更多阅读

西摩犬 西摩犬多少钱

西摩犬,最可爱的狗狗。皮毛披毛要自然不須經修剪而散發出自然蓬帳的線條美。雄性西摩的披毛比雌性更為蓬勃豐厚。底層披毛短、厚而且柔軟。披毛不能鬈曲,外層披毛比較長而挺,生長在頭及肩附近的披毛應該特別誇張來顯得頭部披毛如帶

聚美优品魔盒 魔盒,做小而美的特色品

      借用本刊主笔张兵武的一句话:未来的产业革命中,更多的突破将来自于高度聚焦某一品类并在此基础上进行深度细分的品牌。本土品牌沿着这一路线前行将开创出精彩纷呈的局面。  事实上,对于新生品牌而言,无论是大众护肤,彩妆,洗护

和战争之王类似的电影 胶王的战争

 每至秋冬进补季节,便是阿胶的销售旺季。今年春节,阿胶市场老大东阿阿胶的价格更是不降反升。这似乎延续了自2006年秦玉峰执掌东阿阿胶以来,实施的价值回归战略——运用价格撬动品牌。   为了不成为东阿阿胶价格跷跷板的陪衬品,老

丁磊养猪成功了吗 丁磊养猪与产业升级

系列专题:丁磊养猪前首富、现网易CEO丁磊先生近日宣布,他要养猪,而且数量不少,据说1万头。   丁磊先生养猪的原因各方莫衷一是,但是换一个角度看,笔者不少投资界的朋友为了健康着想,都有去郊区种菜养猪的念头,前首富养猪也就不足为奇了。

声明:《mybatis中#与$的区别 数据库中exists语句的用法》为网友指尖上得阳光分享!如侵犯到您的合法权益请联系我们删除