簡體   English   中英

在SQL中選擇不同的值對

[英]selecting distinct pairs of values in SQL

我有一個Access 2010數據庫,它存儲源和目標計算機的IP地址。 如果我的數據庫中有以下條目

|source           |   destination|
|--------------------------------|
|  A              |     B        |
|  B              |     A        |
|  A              |     B        |
|  C              |     D        |
|  D              |     D        |

有任何查詢可以選擇唯一對嗎? 也就是說,查詢的輸出應該是

|source           |     destination|
|----------------------------------|
|  A              |          B     |
|  C              |          D     |

你的問題似乎意味着兩件事:

  1. 列出源/目的地對時,您只想在一個方向上看到對,例如,(A,B)但不是(B,A)。

  2. 該列表應該省略源和destnation相同的對,例如,(D,D)

在那種情況下查詢......

SELECT DISTINCT source, destination
FROM
    (
            SELECT source, destination
            FROM SomeTable
        UNION ALL
            SELECT destination, source
            FROM SomeTable
    )
WHERE source < destination

...當針對包含......的[SomeTable]運行時...

source  destination
------  -----------
A       B          
B       A          
A       B          
C       D          
D       D          
E       D          

......會產生:

source  destination
------  -----------
A       B          
C       D          
D       E          

從YourTable中選擇唯一的源,目的地

要么

從YourTable中選擇不同的源,目的地

要么

按源,目標從YourTable組中選擇源,目標

使用GROUP BY子句

SELECT  source, destination 
FROM SomeTable
GROUP BY source, destination 

暫無
暫無

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

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