Sobes.tech
Intern

Czy znasz SQL?

sobes.tech AI

Odpowiedź od AI

Tak, mam doświadczenie z SQL, w szczególności z Microsoft SQL Server.

Znam podstawowe koncepcje i polecenia:

  • DDL (Data Definition Language): CREATE, ALTER, DROP.
  • DML (Data Manipulation Language): SELECT, INSERT, UPDATE, DELETE.
  • DCL (Data Control Language): GRANT, REVOKE.
  • TCL (Transaction Control Language): COMMIT, ROLLBACK.

Potrafię pisać złożone zapytania korzystając z:

  • Połączeń (JOIN): INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN, CROSS JOIN.
  • Funkcji agregujących: COUNT, SUM, AVG, MIN, MAX.
  • Grupowania i filtrowania: GROUP BY, HAVING, WHERE.
  • Podzapytania.
  • Funkcji okienkowych (Window Functions).
  • Wspólnych wyrażeń tabelarycznych (CTE).

Jestem również zaznajomiony z koncepcjami indeksów (klastrowane, nieklastrowane), transakcji, procedur składowanych i wyzwalaczy. Rozumiem zasady normalizacji baz danych.

Przykład prostego zapytania do wyboru danych:

SELECT  
    CustomerID, -- Identyfikator klienta  
    CompanyName, -- Nazwa firmy  
    ContactName -- Imię kontaktu  
FROM  
    Customers -- Z tabeli klientów  
WHERE  
    Country = 'USA'; -- Filtrowanie po kraju  

Przykład zapytania z JOIN i agregacją:

SELECT  
    p.ProductName, -- Nazwa produktu  
    SUM(od.Quantity) AS TotalQuantitySold -- Całkowita sprzedana ilość  
FROM  
    Products AS p -- Tabela produktów  
INNER JOIN  
    OrderDetails AS od ON p.ProductID = od.ProductID -- Połączenie po ID produktu  
GROUP BY  
    p.ProductName; -- Grupowanie po nazwie produktu