Chcę, aby moje zapytanie zwróciło najpierw wiersze tabeli, w której kolumna zawiera najpierw określoną wartość, a następnie zwróci resztę wierszy alfabetycznie.
Jeśli mam tabelę, coś takiego:
Table: Mieszkańcy
id - imie - miasto
1 Pawel Poznan
2 Adam Lodz
3 Jan Warszawa
4 Ania Warszawa
5 Eryk Poznan
6 Eliza Warszawa
Korzystając z tej tabeli, chcę, aby moje zapytanie zwróciło najpierw wiersze zawierające Warszawa, a następnie resztę wierszy alfabetycznie według miasta. Czy można to zrobić za pomocą tylko jednego zapytania?
1 odpowiedź
W SQL Server, Oracle, DB2 i wielu innych systemach baz danych możesz użyć:
ORDER BY CASE WHEN miasto = 'Warszawa' THEN 1 ELSE 2 END, miasto