SQL的嵌套查询与连接查询的区别?~~~~急急急
SQL的嵌套查询与连接查询有什么区别,有的题可以用嵌套但是不能用连接查询,老师说的是条件集合不唯一即用嵌套查询。应该怎样理解条件集合,两者之间到底有什么不一样?...
SQL的嵌套查询与连接查询有什么区别,有的题可以用嵌套但是不能用连接查询,老师说的是条件集合不唯一即用嵌套查询。应该怎样理解条件集合,两者之间到底有什么不一样?
展开
2个回答
展开全部
解释一下嵌套查询,就是一条查询语句中间再套一个条查询语句,称之嵌套查询。如楼上的第一条例子。
连接查询的意思说白了,就是在不同的表中进行查询,但是前提就是表与表之间存在着关系,如,拿银行信用卡表A和个人信息表B举例子,表A中肯定有卡号,个人信息表中也存在着卡号,我想查询这个人办了什么样的信用卡的话,假定表B里面肯定没有信用卡的信息了,但在表A里面有相关信息,只有关联信用卡的卡号,再进行对表B的字段的查询,自然就形成了连接查询。
select b.信用卡属性,b.信用卡类型 from A,B where A.ID=B.ID and A.姓名=’张三‘
一般来说2表或多表关联的字段基本都是不重复数据的字段,如PK,多字段PK等等。
连接查询的意思说白了,就是在不同的表中进行查询,但是前提就是表与表之间存在着关系,如,拿银行信用卡表A和个人信息表B举例子,表A中肯定有卡号,个人信息表中也存在着卡号,我想查询这个人办了什么样的信用卡的话,假定表B里面肯定没有信用卡的信息了,但在表A里面有相关信息,只有关联信用卡的卡号,再进行对表B的字段的查询,自然就形成了连接查询。
select b.信用卡属性,b.信用卡类型 from A,B where A.ID=B.ID and A.姓名=’张三‘
一般来说2表或多表关联的字段基本都是不重复数据的字段,如PK,多字段PK等等。
展开全部
select * from table1 t1 where (t1.col1 , t1.col2,t1.col3 ) in (
select t2.col1,t2.col2,t2.col3 from table2 t2) ;
等价于
select t1.* from table1 t1 , table2 t2
where t1.col1 = t2.col1
and t1.col2 = t2.col2
and t1.col3 = t2.col3 ;
----------------------------------
条件集合不唯一也就是说有多条,但是连接查询一样可以用。你是不是表达错了老师的意思?
select t2.col1,t2.col2,t2.col3 from table2 t2) ;
等价于
select t1.* from table1 t1 , table2 t2
where t1.col1 = t2.col1
and t1.col2 = t2.col2
and t1.col3 = t2.col3 ;
----------------------------------
条件集合不唯一也就是说有多条,但是连接查询一样可以用。你是不是表达错了老师的意思?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询