激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務器之家 - 數(shù)據(jù)庫 - Sql Server - 根據(jù)多條件查詢臨時表 想得到不同結(jié)果集的方法

根據(jù)多條件查詢臨時表 想得到不同結(jié)果集的方法

2019-11-18 15:03mssql教程網(wǎng) Sql Server

很多情況下,需要采用多個參數(shù)來查詢一張臨時表,每個參數(shù)都要求得到不同的臨時表結(jié)果集。而往往某些參數(shù)并不對應這張臨時表中的字段,而是對應與該臨時表ID關(guān)聯(lián)的另一張表的字段。

當我寫下如下sql語句時,我得到了輸入@c參數(shù)時想得到的結(jié)果集
select * from @tb t where t.id in (select id from tb where f = @c) 
但如果有@a,@b,@c,而它們分別想從@tb中得到不同的結(jié)果集,例如 

復制代碼代碼如下:


if @a is not null 
begin 
--得到@a想得到的 
end 
if @b is not null 
begin 
--得到@b想得到的 
end 
if @c is not null 
begin 
--得到@c想得到的 
end 


這樣做好像沒什么問題,但如果@a和@b是一起的,甚至是@a,@b,@c,@d,@e,@f等等N多種條件組合,這樣就不好辦了。所以必須先build好@tb,最后一次性查詢 
--構(gòu)造@tb 
select * from @tb 
假如我已經(jīng)通過@a,@b得到了一種@tb結(jié)果集,當我再次使用@c進行條件判斷時,這樣就會覆蓋剛才的結(jié)果。 
可以采用“刪除不符合條件的記錄”的方法來做,由于@tb已經(jīng)得到了@a,@b想得到的結(jié)果,所以只要刪除掉不符合@c的結(jié)果就行了。完。 

復制代碼代碼如下:


if @c is not null 
begin 
delete c from @tb c where c.id not in (select id from tb where f = @c) 
end 
select * from @tb 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美精选一区二区 | 欧美成人黄色片 | 午夜国产在线 | 日韩欧美精品电影 | 欧美 日韩 亚洲 中文 | 色黄视频免费观看 | 国色天香综合网 | 成人短视频在线观看免费 | 一级黄色影片在线观看 | 一级免费 | 久久亚洲精品久久国产一区二区 | 久久久tv | 色蜜桃av| 国产一级在线观看视频 | 午夜丰满少妇高清毛片1000部 | 久久狠狠高潮亚洲精品 | 免费毛片电影 | 久久亚洲网| 精品三区视频 | 国产精品刺激对白麻豆99 | 日韩精品一二三 | 国产成视频在线观看 | 91美女视频在线观看 | 久久久电影电视剧免费看 | 2019中文字幕在线播放 | 三人弄娇妻高潮3p视频 | 亚洲国产精品久久久久久久久 | 韩国十九禁高潮床戏在线观看 | 欧美精品一级 | 亚洲成a人在线 | 久久久国产一级片 | h视频免费观看 | 黄色试看视频 | 性爱免费在线视频 | 高清视频91 | 91avsese| 人禽l交免费视频观看 视频 | 337p日本欧洲亚洲大胆精蜜臀 | 舌头伸进添的我好爽高潮网站 | 国产精品免费小视频 | 伊人久操视频 |