SQL Server 2008:如何只在1列中为select和in group中的多个列写入查询

时间:2013-04-05 06:58:32

标签: sql sql-server-2008

我的要求是如何只在1列中为select和in group中的多个列编写查询。在select的多列中,第一列我使用了distinct。但我想只分组一列是第3列。请告诉我任何一个。

我得到的结果如下:

D2A08528-FFBA-492D-AF51-50D6CC10C5A4    b.vithoban@gmail.com    E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
6110E173-419B-4C1B-8524-6D9EF39D27E7    bonthapally123@gmail.com    E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
52D7DA02-9415-447F-9DF4-8D327E599347    rama6452@gmail.com  E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
9FCC3C51-3BB7-4A18-A1E5-9B4C6B657AB2    krishna.rama718@gmail.com   E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
EB79FC72-5144-445E-8EE7-D3A195902210    venkatanarasaiahmannam@gmail.com    E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
C04EA2EF-8311-4194-B67D-D88C1CDA912D    ramakrishna2526@gmail.com   E0F127ED-DA67-45F4-A2C5-C0E89CB5E1B4    5
40D24F2E-7D3A-48A8-ADCF-208E2F463C81    sivaputta123@gmail.com  C83583D4-C08A-4AFF-93FB-5FB91654D320    2
DE42D201-7513-43BD-98A1-4F5B52C799A3    bonthapally123@gmail.com    7C6FA760-0B13-4629-9383-C7D943A1DE8C    1

但我需要结果如下:

D2A08528-FFBA-492D-AF51-50D6CC10C5A4 b.vithoban@gmail.com E0F127ED-DA67-45F4-A2C5C0E89CB5E1B4   5

40D24F2E-7D3A-48A8-ADCF-208E2F463C81 sivaputta123@gmail.com  C83583D4-C08A-4AFF-93FB-5FB91654D320    2

DE42D201-7513-43BD-98A1-4F5B52C799A3  bonthapally123@gmail.com 7C6FA760-0B13-4629-9383-C7D943A1DE8C   1

2 个答案:

答案 0 :(得分:3)

请尝试:

SELECT * FROM(
    SELECT 
        ROW_NUMBER() OVER (PARTITION BY 3rdColumn ORDER BY 3rdColumn) RNum,
        * 
    FROM YourTable
)x WHERE RNum=1

答案 1 :(得分:1)

你需要的是@ techdo的回答。这里只是SQL FIDDLE DEMO使用@ techdo的查询。