久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如果有多個(gè)相同的 ID,Where 子句

Where clause if there are multiple of the same ID(如果有多個(gè)相同的 ID,Where 子句)
本文介紹了如果有多個(gè)相同的 ID,Where 子句的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

我有下表:

ID | source | Name | Age | ... | ...
1  | SQL    | John | 18  | ... | ...
2  | SAP    | Mike | 21  | ... | ...
2  | SQL    | Mike | 20  | ... | ...
3  | SAP    | Jill | 25  | ... | ...

我希望每個(gè) ID 都有一個(gè)記錄.這背后的想法是,如果 ID 只出現(xiàn)一次(無(wú)論來(lái)源如何),則將采用該記錄.但是,如果一個(gè) ID 有 2 條記錄,那么以 SQL 作為源的記錄將是這里使用的記錄.

I want to have one record for each ID. The idea behind this is that if the ID comes only once (no matter the Source), that record will be taken. But, If there are 2 records for one ID, the one containing SQL as source will be the used record here.

所以,在這種情況下,結(jié)果將是:

So, In this case, the result will be:

ID | source | Name | Age | ... | ...
1  | SQL    | John | 18  | ... | ...
2  | SQL    | Mike | 20  | ... | ...
3  | SAP    | Jill | 25  | ... | ...

我是通過(guò)一個(gè)分區(qū)完成的(按 Source desc 排序),但如果有一天會(huì)添加第三個(gè)源,這將無(wú)法正常工作.

I did this with a partition over (ordered by Source desc), but that wouldn't work well if a third source will be added one day.

還有其他選擇/想法嗎?

Any other options/ideas?

推薦答案

最簡(jiǎn)單的方法(在我看來(lái))是使用帶有排名功能的 CTE:

The easiest approach(in my opinion) is using a CTE with a ranking function:

with cte as
(
   select ID, source, Name, Age, ... , 
          rn = row_number() over (partition by ID order by case when source = 'sql'
                                                           then 0 else 1 end asc)
   from dbo.tablename
)
select ID, source, Name, Age, ...
from cte
where rn = 1

這篇關(guān)于如果有多個(gè)相同的 ID,Where 子句的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個(gè)子標(biāo)記轉(zhuǎn)換為具有多個(gè)分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個(gè)表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計(jì)算值創(chuàng)建計(jì)算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對(duì)?) - IT屋-程序員軟件開(kāi)發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(hào)(問(wèn)題和答案的組合))
主站蜘蛛池模板: 91成人精品 | 久久午夜国产精品www忘忧草 | 国产h视频 | 91免费在线看 | 日韩av免费在线观看 | 日韩视频一区在线观看 | 成人伊人网 | 亚洲在线一区二区 | 91在线精品一区二区 | 日韩精品一区二区三区视频播放 | 一区二区av| 免费九九视频 | 天天曰夜夜操 | 亚洲成人av在线 | 亚洲夜射| 婷婷成人在线 | 999久久久久久久久 国产欧美在线观看 | 亚洲成人免费电影 | 黄视频网站免费观看 | 日日干日日色 | 国产精品日韩欧美一区二区三区 | 欧美视频免费在线 | 宅女噜噜66国产精品观看免费 | 精品少妇一区二区三区在线播放 | av一级 | 日本不卡一区二区三区 | 国产精品久久国产精品久久 | 一级片网址 | 国产伦一区二区三区四区 | 99视频久| 亚洲国产第一页 | 亚洲国产欧美国产综合一区 | 免费在线观看一区二区三区 | 国产一级视频在线观看 | 精品久久国产 | av一级毛片 | 国产精品一区二区欧美 | 亚洲精品久久久久久久久久久 | 国产一区久久精品 | 黄色高清视频 | 色欧美片视频在线观看 |