Tworzenie indeksu na kolumnie, aby przyspieszyć wyszukiwanie.
CREATE INDEX idx_klasa ON uczniowie(klasa);
Użycie wyrażeń regularnych do wyszukiwania uczniów, których nazwisko zaczyna się na literę 'K'.
SELECT * FROM uczniowie WHERE nazwisko REGEXP '^K';
Tworzenie procedury składowanej, która umożliwia dodanie nowego ucznia do bazy danych.
DELIMITER // CREATE PROCEDURE DodajUcznia(IN imie VARCHAR(50), IN nazwisko VARCHAR(50), IN wiek INT, IN klasa VARCHAR(10)) BEGIN INSERT INTO uczniowie (imie, nazwisko, wiek, klasa) VALUES (imie, nazwisko, wiek, klasa); END // DELIMITER ;
Przykład funkcji użytkownika, która zwraca średni wiek uczniów.
DELIMITER // CREATE FUNCTION ObliczSredniWiek() RETURNS DECIMAL(5,2) BEGIN DECLARE wynik DECIMAL(5,2); SELECT AVG(wiek) INTO wynik FROM uczniowie; RETURN wynik; END // DELIMITER ;
Użycie transakcji do przeprowadzania kilku operacji w jednej jednostce. Jeśli którakolwiek operacja nie powiedzie się, cała transakcja zostanie wycofana.
START TRANSACTION; UPDATE uczniowie SET wiek = wiek + 1 WHERE klasa = '3A'; DELETE FROM uczniowie WHERE wiek > 18; COMMIT;
Optymalizacja zapytania poprzez użycie indeksów, aby przyspieszyć operacje wyszukiwania.
EXPLAIN SELECT * FROM uczniowie WHERE klasa = '2A';
Tworzenie raportu pokazującego średnią ocenę z przedmiotów w każdej klasie.
SELECT klasa, AVG(ocena) AS srednia_ocena FROM oceny GROUP BY klasa;