sql嵌套查询和多表联合查询之间的差别 您所在的位置:网站首页 多表联查的难点 sql嵌套查询和多表联合查询之间的差别

sql嵌套查询和多表联合查询之间的差别

2024-07-11 06:11| 来源: 网络整理| 查看: 265

sql语句会用到许多查询语句,如果牵扯到多张表的时候 一般会需要复杂查询方式:

       嵌套查询:

     

select * from bi_BillItem where BillID in (select BillID from bi_Bill where IsArchived='0' and IsCheckOuting='2') group by menuId,MenuPrice

这条语句 其中  select,as, count ,from where,in ,and,group up都是关键字,这条语句的意思是:bi_BillItem根据billid去bill表查满足这些条件的如果查到满足条件billid相等的就查询出bi_BillItem中的menuId,menuName,MenuPrice,(sum(AmountOrder)-sum(AmountCancel))字段  并且按 menuId和menuPrice排序

 

 

    多表联合查询:

 

select * from bi_BillItem left join bi_Bill on bi_BillItem.BillID=bi_Bill.BillID where IsArchived='0' and IsCheckOuting='2' group by menuId,MenuPrice

这条语句 也叫做多表关联查询,left join 意思左关联的意思 ,distinct意思是去除相同的字段 ,语句意思和上面一样。

 

 

  他们之间差别是 查询数据过多时,多表联合查询比嵌套查询 速度快很多 。      

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有