Hirdetés
Új hozzászólás Aktív témák
-
nyunyu
félisten
válasz
OldBoyDev
#4610
üzenetére
Sorok oszlopokká forgatásához a PIVOT függvény kell, de azt nem minden DB kezelő ismeri.
Szintaxisa valahogy így néz ki:
SELECT p.projectName, pc.costCategory, pc.cost
FROM Project p
LEFT JOIN ProjectCost pc
ON pc.projectID=p.projectID
PIVOT(
SUM(pc.cost) sum
FOR(pc.costCategory)
IN('Cost category1', 'Cost category2', 'Cost category3', 'Cost category4')
)
ORDER BY p.projectName;Gyakorlatilag a FOR-nál megadott costCategory mező értékkészletét válogatja szét, és csinál belőlük új oszlopokat az IN-nél megadott sorrendben, és ezekbe az oszlopokba teszi a FOR előtti oszlopfüggvény értékét.
PIVOT()-on belül sehol nem említett oszlopok (projectName) pedig maradnak úgy ahogy van.
-
Louro
őstag
válasz
OldBoyDev
#4610
üzenetére
SELECT
Project.ProjectName AS 'Project Name',
cost.CostCategory1 AS 'Cost category1',
cost.CostCategory2 AS 'Cost category2'
FROM Project
INNER JOIN ProjectCost
ON Project.projectID = ProjectCost.projectIDHa egy projektnek több költsége is lehet, akkor....
SELECT
Project.ProjectName AS 'Project Name',
SUM(cost.CostCategory1) AS 'Cost category1',
SUM(cost.CostCategory2) AS 'Cost category2'
FROM Project
INNER JOIN ProjectCost
ON Project.projectID = ProjectCost.projectID
GROUP BY
Project.ProjectName
Új hozzászólás Aktív témák
- LG 27GR93U-B - 27" IPS - UHD 4K - 144Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDR 400
- Lenovo X13 Yoga 2in1 Thinkpad WUXGA IPS Touch i5.1135G7 16GB 256GB Intel Iris XE Win11 Pro Garancia
- MEDION ERAZER Cooling Kit V2 Vízhűtés - MD 62737 Beast 16 X1 gamer laptophoz
- Dell Latitude 7330 i7-1255U 16GB 256GB 400nites legjobb kijelző! 1 év garancia
- Samsung Galaxy A50 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


