SQL baze podataka - Sponzor: Baze-Podataka.net MySQL, MSSQL, Oracle, Access, ODBC. Ako imate problem brže i preciznije ćete dobiti odgovor ako priložite strukturu tabela ili skript koji kreira tabele i puni ih test podacima umesto što to problem opisujete samo rečima. Sponzor: Baze-Podataka.net - Blog o bazama podataka |
|
Alati teme | Način prikaza |
08. 08. 2006. | #1 |
novi član
Na probnom radu
Datum učlanjenja: 21.03.2006
Poruke: 12
Hvala: 3
1 "Hvala" u 1 poruci
|
SQL 2000 - Pivot i CrosTable
Zdravo svima.
Problem je sledeći. Imam tabele (SQL 2000) Poruke(PorukaID, poruka), Statusi(StatusID,status) i StatusiPoruka(PorukaID, StatusID) Pretpostavimo da imamo ove podatke Poruke ------------ 1 - Poruka1 2 - poruka2 Statusi ------------------- 1 - Status1 2 - Status2 3 - Status3 StatusiPoruka -------------------- 1 - 1 1 - 3 2 - 2 Kako napisati upit da bih dobio sledeći rezultat PorukeSaStatusim PorukaID ...... poruka .......... Status1 ........ Status2 ...... Status3 ------------- ----------- ------------ ----------- ---------- 1 .................. Poruka1 ............. 1 ............. 0 ............. 1 2 .................. poruka2 ............. 0 ............. 1 ............. 0 Nikako ne mogu da savladam Pivot i CrosTable Unaprijed hvala. PS. U pitanju je SQL server 2000 |
09. 08. 2006. | #2 |
novi član
Datum učlanjenja: 01.08.2006
Poruke: 2
Hvala: 0
0 "Hvala" u 0 poruka
|
Hm
Mozda mislis ovo;
SELECT poruke.id,poruke.poruk, sum(CASE Statusi.id WHEN 1 THEN 1 ELSE 0 END) AS Status_1, sum(CASE Statusi.id WHEN 2 THEN 1 ELSE 0 END) AS Status_2, sum(CASE Statusi.id WHEN 3 THEN 1 ELSE 0 END) AS Status_3 FROM PorukaStatus INNER JOIN poruke ON PorukaStatus.id_poruke = poruke.id INNER JOIN statusi ON PorukaStatus.id_status = statusi.id GROUP BY poruke.id,poruke.poruk GO |
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
Pivot Table OWC Alternative | dejan2102 | Programiranje | 0 | 04. 11. 2006. 00:26 |