2010-09-09 11 views
8

Jeśli mam tablicę takich jakselect distinct dla 2 kolumn w zapytaniu SQL

1 bob 
1 ray 
1 bob 
1 ray 
2 joe 
2 joe 

I chcę, aby wybrać odrębny oparty na dwóch kolumnach tak, że chciałbym dostać

1 bob 
1 ray 
2 joe 

Jak można Zapytuję moje zapytanie? Czy jest to jedyny sposób łączenia kolumn i owijania ich wokół odrębnego operatora funkcji?

Odpowiedz

24
select distinct id, name from [table] 

lub

select id, name from [table] group by id, name 
+2

Zostaw trochę dla nas, co? –

+0

Zabawne! Minęły godziny od mojej ostatniej akceptowanej odpowiedzi! Har-har ... –

+1

@OMG Kuce, dlaczego 47k to za mało? –

4

Można po prostu zrobić:

select distinct col1, col2 from your_table; 

To jest dokładnie to, co odrębne operator jest: usuwanie zduplikowanych wierszy wynikowych.

Należy pamiętać, że odrębne jest zazwyczaj dość kosztowna operacja, ponieważ, po przetworzeniu zapytania, serwer DB może przeprowadzić operację rodzaj w celu usunięcia duplikatów.