Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapytanie (kilka selectow)
Forum PHP.pl > Forum > Bazy danych
mrm
witam, chciałbym napisać zapytanie w którym użyje kilku selectów, mianowicie

select count(*) from pracownicy where zarobki <1000
select count(*) from pracownicy where zarobki >1000
select count(*) from pracownicy

miałoby mi to zwrócić coś takiego

10 | 44 | 54
nospor
  1. SELECT
  2. SELECT count(*) FROM pracownicy WHERE zarobki <1000,
  3. SELECT count(*) FROM pracownicy WHERE zarobki >1000,
  4. SELECT count(*) FROM pracownicy
#luq
Taka mała uwaga. Nie uźywaj "*" w count(), szybsze jest wrzucenie jakiegoś pola w tą funkcje, a wyniki są identyczne smile.gif
Co do Twojego problemu:

  1. SELECT * FROM
  2. ( SELECT count( zarobki ) AS c1 FROM pracownicy WHERE zarobki <1000 ) AS count1,
  3. ( SELECT count( zarobki ) AS c2 FROM pracownicy WHERE zarobki >1000 ) AS count2,
  4. ( SELECT count( zarobki ) AS c3 FROM pracownicy ) AS count3


w taki sposób moźesz to rozwiązać, niestety nie mam dostępu do bazy źeby taki zapis sprawdzić, ale chyba powinno działać.
mrm
dziękuje
Riklaunim
Podzapytania to ci tak raczej nie przejdą, plus nie będzie to wydajne.
mrm
Cytat(Riklaunim @ 19.04.2010, 11:28:36 ) *
Podzapytania to ci tak raczej nie przejdą, plus nie będzie to wydajne.


to jak to najlepiej zrobić ?, czyli żeby efekt był taki sam, a lepsza wydajność
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.