[mysql/php] jak =?ISO-8859-2?Q?zliczy=E6_ilo=B6=E6_unikalnyc?==?ISO-8859-2?Q?h_rekord=F3w_w_jednym_zapytaniu=3F?=
Piotr - 05-01-2006 08:05
[mysql/php] jak =?ISO-8859-2?Q?zliczy=E6_ilo=B6=E6_unikalnyc?==?ISO-8859-2?Q?h_rekord=F3w_w_jednym_zapytaniu=3F?=
mam zapytanie które wypluwa mi wyniku tabelkę
select * from dane
nazwa ile numer
pier 24 12314 drug 11 1245132 drug 78 5423 trze 87 646789
i jest ok, bo taką tabelkę chcę wyświetlić na ekranie. Proste. Jednak na końcu tabeli chcę wyświetlić jeszcze ile unikalnych wartości pojawiło się w kolumnie nazwa czyli 3 (nie 4 co równa się ilości wszystkich wierszy). Czy mogę to zrobić w jednym zapytaniu jakoś czy muszę zrobić drugie z distinct?
mhm - 05-01-2006 08:05
Piotr napisał(a): > mam zapytanie które wypluwa mi wyniku tabelkę > > select * from dane > > nazwa ile numer > > pier 24 12314 > drug 11 1245132 > drug 78 5423 > trze 87 646789 > > i jest ok, bo taką tabelkę chcę wyświetlić na ekranie. Proste. > Jednak na końcu tabeli chcę wyświetlić jeszcze ile unikalnych wartości > pojawiło się w kolumnie nazwa czyli 3 (nie 4 co równa się ilości > wszystkich wierszy). Czy mogę to zrobić w jednym zapytaniu jakoś czy > muszę zrobić drugie z distinct? >
moze cos takiego sie da...
select * from dane union select 'unikalnych_nazw' as nazwa, count (distinct nazwa) as ile, null as numer from dane
ale to sobie tylko tak gdybam wieczornie... pozdr, mhm.
HERAKLES - 05-01-2006 08:05
Piotr wrote:
> mam zapytanie które wypluwa mi wyniku tabelkę > > select * from dane > > nazwa ile numer > > pier 24 12314 > drug 11 1245132 > drug 78 5423 > trze 87 646789 > > i jest ok, bo taką tabelkę chcę wyświetlić na ekranie. Proste. > Jednak na końcu tabeli chcę wyświetlić jeszcze ile unikalnych wartości > pojawiło się w kolumnie nazwa czyli 3 (nie 4 co równa się ilości > wszystkich wierszy). Czy mogę to zrobić w jednym zapytaniu jakoś czy > muszę zrobić drugie z distinct? select count(*) from (select distinct .....) ;
=?ISO-8859-2?Q?=22Jerzy_Ho=B3da_=7C_maszyna=2Epl=22?= - 06-01-2006 09:02
Piotr napisał(a): > mam zapytanie które wypluwa mi wyniku tabelkę > > select * from dane > > nazwa ile numer > > pier 24 12314 > drug 11 1245132 > drug 78 5423 > trze 87 646789 > > i jest ok, bo taką tabelkę chcę wyświetlić na ekranie. Proste. > Jednak na końcu tabeli chcę wyświetlić jeszcze ile unikalnych wartości > pojawiło się w kolumnie nazwa czyli 3 (nie 4 co równa się ilości > wszystkich wierszy). Czy mogę to zrobić w jednym zapytaniu jakoś czy > muszę zrobić drugie z distinct? >
Jak już wypluwasz te dane to możesz przy okazji policzyć ile czego jest w php. W tym przypadku to chyba szkoda męczyć dodatkowo bazę danych. Wystarczy coś w stylu $licznik[$nazwa]++ i będziesz miał ilość unikatowych wierszy w count($licznik);
Pozdrawiam Jerzy H -- Jerzy Hołda | maszyna.pl e-mail: jerz [ ] maszyna.pl | url: http://maszyna.pl cell: +48 / 601-334-859 | gg: 900600 | jabber: jerz [ ] maszyna.pl
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] Zwrot tego, co pasuje i nie pasuje :-/
[pgsql] Dostosowanie składni MySQL 5.0 -> PGSQL 8.1
[mysql] galeria zdjec - numerowanie zdjec
[mysql] CONCAT agregujący, ale nie GROUP_CONCAT()
mysql data 0000-00-00 na koniec
[MySQL] Problem z zapisem danych w bazie danych
jak przenieesc czesc tabeli do innej tabeli MySQL
zanotowane.pldoc.pisz.plpdf.pisz.plnawschodzie.xlx.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 |
|