Middle+
Ar rašėte ką nors su CTE (Bendrojo lentelės išraiška, WITH)?
sobes.tech AI
Atsakymas iš AI
Taip, aš naudoju CTE (Bendra lentelės išraiška) SQL užklausose, siekdamas pagerinti sudėtingų užklausų skaitomumą ir struktūrą. CTE leidžia apibrėžti laikiną pavadintą lentelę, kurią galima naudoti pagrindinėje užklausoje.
CTE naudojimo pavyzdys:
WITH recent_orders AS (
SELECT order_id, customer_id, order_date
FROM orders
WHERE order_date > CURRENT_DATE - INTERVAL '30 days'
)
SELECT customer_id, COUNT(order_id) AS orders_count
FROM recent_orders
GROUP BY customer_id;
Go kalboje tai patogu naudoti kartu su duomenų bazės darbui skirtais paketais, pvz., database/sql ar sqlx, tiesiog perduodant šią užklausą kaip eilutę.