簡體   English   中英

如何在MSSQL中將兩個不同的列進行比較

[英]How to compare two different column for opposite of one another in mssql

我有一個關系表的結果集。 我正在將他們的數據從一種模式轉換為另一種模式。 有關系表作為每個人的關系行。 因此,例如,如果Bill知道bob,則存在一行具有contactid和contactid1的行。

Contactid是關系中的主要人員。 在他們的系統中,鮑勃需要有一個單獨的行,以他為主行。

所以他們數據庫中的行看起來像這樣

Contactid | Contactid1 | Description
123       | 456        |Gold Club Dinner
456       | 123        |Gold Club Dinner

而在我的架構中,關系看起來像這樣

Contactid | Contactid1 | Description
123       | 456        |Gold Club Dinner

我需要知道一種在第一個數據庫中獲得每個組的前1名的方法,這樣我就不會在表結構中得到成千上萬個重復項。

有任何想法嗎?

嘗試這個

select distinct
    case when contactID<contactID1 then contactID else contactID1 end , 
    case when contactID<contactID1 then contactID1 else contactID end ,
    description
from yourtable

但是,我認為這兩種設計都是錯誤的,應該規范化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM