MySQL
Wyszukiwarka
Wprowadzenie do MySQL
Tworzenie i modyfikowanie tabel
- Zapytanie CREATE: Tworzenie tabeli
- Instrukcja ALTER: Modyfikacja tabeli
- Zapytanie DROP: Usuwanie tabeli
Zapytania pobierające dane
- Zapytanie SELECT: Podstawy
- Zapytanie SELECT: Klauzula WHERE
- Zapytanie SELECT: Sortowanie danych (ORDER BY)
- Zapytanie SELECT: Filtrowanie danych (LIKE, IN, BETWEEN)
Zapytania modyfikujące dane
- Zapytanie INSERT: Dodawanie danych
- Zapytanie UPDATE: Aktualizacja danych
- Zapytanie REPLACE: Zastępowanie danych
Zapytania usuwające dane
Złączenia i relacje
- Podstawy złączeń (JOIN): INNER JOIN
- Zewnętrzne złączenia (OUTER JOIN)
- Złączenia CROSS JOIN i SELF JOIN
- Tworzenie relacji między tabelami
Funkcje agregujące i grupowanie
- Funkcje agregujące: COUNT, SUM, AVG
- Grupowanie danych: GROUP BY i HAVING
- Zapytania z funkcjami MAX i MIN
Zarządzanie użytkownikami
- Tworzenie nowego użytkownika
- Przydzielanie uprawnień użytkownikom
- Usuwanie użytkowników i cofanie uprawnień
- Zarządzanie hasłami użytkowników
Zaawansowane funkcje MySQL
- Transakcje w MySQL: BEGIN, COMMIT, ROLLBACK
- Tworzenie widoków (VIEWS)
- Procedury składowane: Tworzenie i wywoływanie
- Funkcje użytkownika (USER FUNCTIONS)
Zapytanie SELECT: Sortowanie danych (ORDER BY)
Podczas pracy z bazą danych często chcemy posortować wyniki w określonej kolejności, np. od najnowszych rekordów, alfabetycznie lub według wartości liczbowych. Do tego celu służy klauzula ORDER BY w MySQL.
Domyślnie wyniki zapytania SELECT nie mają określonej kolejności – ich układ zależy od sposobu przechowywania danych w bazie. Dzięki `ORDER BY` możemy wymusić porządek i uporządkować dane według naszych potrzeb.
Składnia klauzuli ORDER BY
✅ Podstawowa składnia:
- SELECT – określa, które kolumny chcemy pobrać.
- FROM – wskazuje tabelę, z której pobieramy dane.
- ORDER BY – określa kolumnę, według której sortujemy wyniki.
- ASC – sortowanie rosnące (domyślne, można pominąć).
- DESC – sortowanie malejące.
Przykład
SELECT kolumny
FROM nazwa_tabeli
ORDER BY kolumna [ASC | DESC];
📌 Sortowanie rosnące i malejące (ASC i DESC)
📝 Opis:
- ASC - oznacza sortowanie rosnące (od A do Z, od najmniejszej do największej wartości).
- DESC - oznacza sortowanie malejące (od Z do A, od największej do najmniejszej wartości).
Przykład
-- Przykład: Pobranie listy użytkowników posortowanych alfabetycznie według nazwiska
SELECT * FROM uzytkownicy
ORDER BY nazwisko ASC;
-- Przykład: Pobranie zamówień od największej wartości do najmniejszej
SELECT * FROM zamowienia
ORDER BY wartosc DESC;
-- Sortowanie dat od najnowszych do najstarszych:
SELECT * FROM zamowienia
ORDER BY data_zamowienia DESC;
📌 Sortowanie według wielu kolumn
✅ Przykład: Posortowanie użytkowników najpierw według nazwiska, a jeśli jest takie samo – według imienia
📝 Opis:
- Najpierw MySQL sortuje dane według nazwisko, a jeśli nazwiska są takie same – według imie.
- Można łączyć sortowanie rosnące i malejące
Przykład
-- Sortowanie według wielu kolumn
SELECT * FROM uzytkownicy
ORDER BY nazwisko ASC, wiek DESC;
-- Sortuje alfabetycznie po nazwisku, ale w przypadku duplikatów pierwszeństwo mają starsze osoby (wiek DESC).
📌 Sortowanie danych liczbowych
✅ Przykład: Pobranie 10 najdroższych produktów
📝 Opis:
- Sortujemy produkty od najdroższych do najtańszych.
- LIMIT 10 zwraca tylko 10 pierwszych rekordów.
Przykład
SELECT * FROM produkty
ORDER BY cena DESC
LIMIT 10;
Podsumowanie
- Klauzula ORDER BY pozwala sortować wyniki zapytania `SELECT`.
- Domyślne sortowanie (`ASC`) jest rosnące, można je pominąć.
- `DESC` służy do sortowania malejącego (od największej wartości do najmniejszej).
- Możemy sortować według wielu kolumn jednocześnie.
- Sortowanie przyspiesza analizę danych, zwłaszcza w połączeniu z `LIMIT`.