【SQL】在SQL Server中多表关联查询问题
生活随笔
收集整理的這篇文章主要介紹了
【SQL】在SQL Server中多表关联查询问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
好久沒有寫SQL語句的多表連接查詢,總在用框架進行持久化操作。今天寫了一個多表關聯查詢,想根據兩個字段唯一確定一條數據
?
失敗的案例如下:
SELECT cyb.id,ad.name FROM [GeneShop].[dbo].[t_member_cyb] cyb ,[GeneShop].[dbo].xx_admin ad,[GeneShop].[dbo].t_bg bg where cyb.hzjg_id = ad.id and cyb.id = bg.cyb_id and (cyb.cybbm = 402045 and bg.product_id = 121) or(cyb.cybbm = 402070 and bg.product_id = 118)查詢出來的效果,簡直不忍直視。
?
被改良后,使用join on 【inner join on】關聯多表查詢
select cyb.id, xa.name from GeneShop.dbo.t_member_cyb cyb join GeneShop.dbo.xx_admin xa on xa.id = cyb.hzjg_id join GeneShop.dbo.t_bg bg on bg.cyb_id = cyb.id where (cyb.cybbm=402045 and bg.product_id = 121) or (cyb.cybbm=402070 and bg.product_id = 118)?
綜上,其實
select 字段1,字段2 from 表1,表2 where 表1.字段 = 表2.字段 and 條件
select?字段1,字段2 from 表1 join 表2 ?on?表1.字段 = 表2.字段 where 條件
兩個表這樣關聯查詢是沒有問題的。
但是多個表的話,可以看出來差距非常的大。
?
-----------------------------------------------------------------------------------------------割掉-----------------------------------------------------------------------------------------------
看來SQL得重新好好的溫習溫習,真是糊涂。
轉載于:https://www.cnblogs.com/sxdcgaq8080/p/7443197.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的【SQL】在SQL Server中多表关联查询问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 简简单单的正则表单验证练习
- 下一篇: jQuery之防止冒泡事件