Sobes.tech
Junior — Middle

Објасните принцип рада и примену заједничких табеларних израза (CTE) у системима за управљање базама података.

sobes.tech АИ

Одговор од АИ

Обични изрази табела (CTE, Common Table Expressions) су привремени именовани резултати упита који се дефинишу на почетку SQL упита и могу се користити унутар главног упита.

Принцип рада:

  • CTE се проглашава помоћу кључне речи WITH.
  • Унутар CTE описује се подупит, чији резултат се може користити као табела у главном упиту.
  • CTE побољшава читљивост и структуру сложених упита, омогућавајући их да се деле на логичке делове.

Примена:

  • поједностављивање сложених упита са угнезденим подупитима.
  • Реализација рекурзивних упита (нпр. пролазак кроз хијерархије).
  • Поновна употреба истог подупита на више места у главном упиту.

Пример употребе 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;

У C#-у при раду са базама података преко ORM или ADO.NET могу се користити CTE у SQL упитима за повећање ефикасности и погодности рада са подацима.