Bazy danych

Witryna zawiera podstawowe informacje odnośnie funkcji w bazach danych takich jak MySQL i Oracle oraz podstawowe informacje dotyczące zapytań.

niedziela, 29 lipca 2012

ORDER BY

ORDER BY - klauzula ta służy do sortowania danych. Dane można sortować rosnąco, malejąco lub używając obu warunków jednocześnie względem kilku kolumn.

Składnia polecenia jest następująca:

SELECT kolumna FROM tabela ORDER BY kolumna ASC|DESC
(przykład 1, przykład 2)


możemy definiować sortowanie względem kilku tabel, np:

SELECT kolumna1, kolumna2, FROM tabela ORDER BY kolumna1 ASC|DESC, kolumna2 ASC|DESC;
(przykład 3)



ASC i DESC oznacza sposób sortowania:
ASC - sortowanie rosnąco,
DESC - sortowanie malejąco.


UWAGA!
Możemy użyć klauzuli ORDER BY nie podawając sposobu sortowania. Domyślnym sposobem sortowania jest wtedy sortowanie rosnące (ASC).



Przykład 1.
Wybieramy numery departamentów oraz nazwy departamentów sortując względem numeru departamentów (rosnąco).

SELECT DEPTNO, DNAME FROM DEPT ORDER BY DEPTNO ASC;

lub

SELECT DEPTNo, DNAME FROM DEPT ORDER BY DEPTNO;


DEPTNO DNAME
---------------------- -------------------------
10 ACCOUNTING
20 RESEARCH
30 SALES
40 OPERATIONS

4 rows selected


Przykład 2.
Wybieramy numery departamentów oraz nazwy departamentów sortując względem numeru departamentów (malejąco).

SELECT DEPTNo, DNAME FROM DEPT ORDER BY DEPTNO DESC;s

EPTNO DNAME
---------------------- -------------------------
40 OPERATIONS
30 SALES
20 RESEARCH
10 ACCOUNTING

4 rows selected



Przykład 3.

Wybieramy wynagrodzenie (wyższe lub równe od 3000 - WHERE SAL=>'3000'), numer pracownika oraz nazwę sortując dane względem wynagrodzenia - malejąco oraz numeru pracownika - rosnąco.

SELECT SAL, EMPNO, ENAME FROM EMP WHERE SAL>='3000' ORDER BY SAL DESC, EMPNO ASC;


SAL EMPNO ENAME
---------------------- ---------------------- ---------------
5000 7839 KING
3000 7788 SCOTT
3000 7902 FORD

3 rows selected

Brak komentarzy:

Prześlij komentarz