[MySQL, MSSQL] =?ISO-8859-2?Q?z=B3=B1czanie_kolumnami?=
aaawro - 12-09-2007 00:15
[MySQL, MSSQL] =?ISO-8859-2?Q?z=B3=B1czanie_kolumnami?=
Witam.
Mam tabelę Pomysly.
id_pomysl(PK i Autonumeracja) | ...<dużo innych atrybutów>
oraz tabele Wyplaty:
id_wyplaty | id_pomysl | rok | kwota | 1 1 1 300 2 1 2 500 3 1 3 800
I teraz jak złożyć zapytanie aby powstało coś takiego:
id_pomysl | <inne atrybuty> | rok1 | rok2| rok3 1 ... 300 500 800
pozdrawiam, Miłosz
Grzegorz Danowski - 13-09-2007 00:04
=?iso-8859-2?Q?Re:_=5BMySQL=2C_MSSQL=5D_z=B3=B1czanie_kolumna mi?=
"aaawro" <aaawro@gazeta.pl> wrote in message news:fc6s5h$1kh$1@nemesis.news.tpi.pl... > Mam tabelę Pomysly. > > id_pomysl(PK i Autonumeracja) | ...<dużo innych atrybutów> > > oraz tabele Wyplaty: > > id_wyplaty | id_pomysl | rok | kwota | > 1 1 1 300 > 2 1 2 500 > 3 1 3 800 > > > I teraz jak złożyć zapytanie aby powstało coś takiego: > > id_pomysl | <inne atrybuty> | rok1 | rok2| rok3 > 1 ... 300 500 800
To czego potrzebujesz nazywa się "Pivot". W MS SQL 2005 jest w standardzie, natomiast w MS SQL 2000 trzeba skorzystać z jakiegoś innego pomysłu - znajdziesz wiele przykładów na sieci, najprostszy wariant:
Select id_pomysl, Sum(Case When rok = 1 Then kwota End) As rok1, Sum(Case When rok = 2 Then kwota End) As rok2, Sum(Case When rok = 3 Then kwota End) As rok3 From Wyplaty Group By id_pomysl -- Pozdrawiam Grzegorz http://gdanowski.blogspot.com/
aaawro - 13-09-2007 00:04
Grzegorz Danowski pisze:
> To czego potrzebujesz nazywa się "Pivot".
Sorry że dopiero teraz ale dopiero co wróciłem i mogę odpisać. Dzięki za wskazówkę, tego kodu nie sprawdzałem, nie bardzo go rozumiem, ale potestuje. Teraz jest o wiele łatwiej - poszukam, może coś będzie pod hasłem : "pivot-like query". Dzięki!!
pozdrawiam
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Gdzie MySQL 4.1, a gdzie 5.0?
[MS SQL] "set names" (mySQL) w MS SQL
oracle -> oracle lub oracle -> mysql replikacja - programy
[mysql 4.0] SELECT t1.id, t1.foo FROM t1 oraz COUNT t2 w jednym zapytaniu.
[MySQL] Zwrot tego, co pasuje i nie pasuje :-/
[pgsql] Dostosowanie składni MySQL 5.0 -> PGSQL 8.1
[mysql] galeria zdjec - numerowanie zdjec
[MySQL] Zapytanie z pliku , wynik do pliku
[mysql] CONCAT agregujący, ale nie GROUP_CONCAT()
mysql data 0000-00-00 na koniec
zanotowane.pldoc.pisz.plpdf.pisz.pladwokat.keep.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|