Podstawy SQL: wszystko, co musisz wiedzieć w jednym krótkim przewodniku

May 05 2023
SQL, czyli Structured Query Language, jest niezbędnym narzędziem do zarządzania i manipulowania danymi w relacyjnych bazach danych. Dzięki szerokiej gamie poleceń SQL umożliwia przeglądanie, tworzenie i usuwanie baz danych i tabel, modyfikowanie danych i wybieranie danych za pomocą różnych poleceń.

SQL, czyli Structured Query Language, jest niezbędnym narzędziem do zarządzania i manipulowania danymi w relacyjnych bazach danych. Dzięki szerokiej gamie poleceń SQLumożliwia przeglądanie, tworzenie i usuwanie baz danych i tabel, modyfikowanie danych i wybieranie danych za pomocą różnych poleceń. W tym obszernym przewodniku omówimy podstawy programu SQL, w tym modyfikację, wybór i przeglądanie danych, a także bardziej zaawansowane koncepcje, takie jak łączenia. Niezależnie od tego, czy jesteś początkującym, czy doświadczonym programistą, w tym przewodniku znajdziesz wszystko, co musisz wiedzieć, aby rozpocząć pracę z platformą SQL.

Zdjęcie autorstwa Markusa Spiske na Unsplash

Przeglądanie, tworzenie i usuwanie danych

  • SHOW DATABASES- przeglądaj dostępne bazy danych:
  • SHOW DATABASES;
    

    CREATE DATABASE databasename;
    

    DROP DATABASE databasename;
    

    SHOW TABLES;
    

    CREATE TABLE CUSTOMERS(
    	ID INT NOT NULL,
    	NAME VARCHAR(20) NOT NULL,
    	AGE INT NOT NULL,
    	ADDRESS CHAR(25),
    	SALARY DECIMAL(18, 2),
    	PRIMARY KEY (ID)
    	FOREIGN KEY (CustomerId) REFERENCES Customers (Id) ON DELETE CASCADE
    );
    

  • CASCADE: automatycznie usuwa lub aktualizuje wiersze w tabeli zależnej, gdy powiązane wiersze w tabeli głównej zostaną usunięte lub zaktualizowane.
  • SET NULL: ustawia wartość NULL dla kolumny klucza obcego, gdy wiersz w tabeli głównej jest usuwany lub aktualizowany. (W takim przypadku kolumna klucza obcego musi obsługiwać ustawienie NULL)
  • RESTRICTlub NO ACTION: odrzuca usunięcie lub modyfikację wierszy w tabeli głównej, jeśli w tabeli zależnej znajdują się powiązane wiersze.
  • SET DEFAULT: ustawia wartość domyślną dla kolumny klucza obcego, gdy usuwany jest powiązany wiersz w tabeli głównej. Wartość domyślna jest określana za pomocą DEFAULTatrybutu.
  • DROP TABLEusuwa tabelę:
  • DROP TABLE tablename;
    

    CREATE VIEW <view_name> AS
    	SELECT <col_name1>, <col_name2>, …
    	FROM <table_name>
    	WHERE <condition>;
    

    DROP VIEW <view_name>;
    

  • INSERT INTO <table_name>- dodaje nowe informacje do bazy danych.
  • INSERT INTO <table_name>
    	VALUES (<value1>, <value2>, <value3>, …);
    

    UPDATE <table_name>
    	SET <col_name1> = <value1>, <col_name2> = <value2>, ...
    	WHERE <condition>;
    

    DELETE FROM Customers
    	WHERE CustomerName='Alex Cadence';
    

  • SELECT FROMi SELECT DISTINCT FROMsłużą do wybierania danych z bazy danych. Ten pierwszy wybiera wszystkie dane z tabeli, a drugi wybiera dane, które się nie powtarzają.
  • SELECT <col_name1>, <col_name2>, …
    	FROM <table_name>;
    
    SELECT DISTINCT <col_name1>, <col_name2>, …
     FROM <table_name>;
    

    SELECT * FROM course WHERE dept_name='Comp. Sci.';
    SELECT * FROM course WHERE credits>3;
    SELECT * FROM course WHERE dept_name='Comp. Sci.' AND credits>3;
    

    SELECT COUNT(course_id), dept_name
    	FROM course
    	GROUP BY dept_name
    	HAVING COUNT(course_id)>1;
    

  • BETWEEN *<value1>* AND *<value2>*służy do wybierania wartości z określonego zakresu.
  • SELECT * FROM instructor
    	WHERE salary BETWEEN 50000 AND 100000;
    

    SELECT * FROM course WHERE title LIKE '%to%';
    SELECT * FROM course WHERE course_id LIKE 'CS-___';
    

    SELECT * FROM student
    	WHERE dept_name IN ('Comp. Sci.', 'Physics', 'Elec. Eng.');
    

    SELECT <col_name1>, <col_name2>, …
    	FROM <table_name>
    	GROUP BY <col_namex>;
    

    SELECT * FROM course ORDER BY credits;
    SELECT * FROM course ORDER BY credits DESC;
    

  • (INNER) JOIN- służy do łączenia tabel i wybierania danych, które istnieją w obu tabelach.
  • SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
    FROM Orders
    INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
    

    SELECT u.id, u.name, d.name AS d_name
    FROM users u
    LEFT OUTER JOIN departments d ON u.d_id = d.id;
    

    SELECT u.id, u.name, d.name AS d_name
    	FROM users u
    	RIGHT OUTER JOIN departments d ON u.d_id = d.id;
    

    SELECT Customers.CustomerName, Orders.OrderID
    	FROM Customers
    	FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
    	ORDER BY Customers.CustomerName;
    

  • USE <database name>- wybierz bazę danych do pracy.
  • SOURCE <file.sql>- wykonaj polecenia znajdujące się w pliku sql.
  • DESCRIBE <table name>- przeglądać informacje o stole.
  • Zdjęcie Aliny Grubniak na Unsplash

SQLjest potężnym narzędziem do zarządzania i manipulowania danymi w relacyjnych bazach danych i odgrywa istotną rolę w wielu branżach. W tym przewodniku omówiliśmy podstawy programu SQL, w tym modyfikację, wybór i wyświetlanie danych, a także bardziej zaawansowane koncepcje, takie jak łączenie. Niezależnie od tego, czy jesteś początkującym, czy doświadczonym programistą, w tym przewodniku znajdziesz wszystko, co musisz wiedzieć, aby rozpocząć pracę z platformą SQL. Ucząc się i opanowując SQL, będziesz w stanie skutecznie zarządzać danymi i analizować je, co jest cenną umiejętnością w dzisiejszym świecie opartym na danych.

Dzięki za przeczytanie i szczęśliwego tworzenia!

Mam nadzieję, że ten artykuł był dla Ciebie pomocny. Dziękujemy za poświęcenie czasu na przeczytanie go.

Aby nie tracić inspiracji, sprawdź inne moje artykuły . Kontynuujmy naukę i rozwój razem!