Sobes.tech
Junior — Middle

Vysvetlite princíp fungovania a použitie spoločných tabulkových výrazov (CTE) v systémoch správy databáz.

sobes.tech AI

Odpoveď od AI

Bežné výrazy tabuliek (CTE, Common Table Expressions) sú dočasné pomenované výsledky dotazu, ktoré sú definované na začiatku SQL dotazu a môžu byť použité vo vnútri hlavného dotazu.

Princíp fungovania:

  • CTE sa deklaruje pomocou kľúčového slova WITH.
  • Vo vnútri CTE je opísaný poddotaz, ktorého výsledok možno použiť ako tabuľku v hlavnom dotaze.
  • CTE zlepšuje čitateľnosť a štruktúru zložitých dotazov, umožňujúc ich rozdelenie na logické časti.

Použitie:

  • Zjednodušenie zložitých dotazov s vloženými poddotazmi.
  • Implementácia rekurzívnych dotazov (napríklad prechádzanie hierarchiami).
  • Opakované použitie toho istého poddotazu na viacerých miestach hlavného dotazu.

Príklad použitia CTE:

WITH RecentOrders AS (
    SELECT OrderID, CustomerID, OrderDate
    FROM Orders
    WHERE OrderDate > '2024-01-01'
)
SELECT CustomerID, COUNT(*) AS OrderCount
FROM RecentOrders
GROUP BY CustomerID;

V C# pri práci s databázami cez ORM alebo ADO.NET je možné používať CTE v SQL dotazoch na zvýšenie efektívnosti a pohodlia práce s dátami.