Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czy zapytanie jest optymalne?, Obliczenie ilości rekordów z dwóch niezależnych tabel w jednym zap.
kodereq
post
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 27.02.2009

Ostrzeżenie: (0%)
-----


Czy zapytanie w tej formie jest optymalne ?

  1. SELECT count(table1.id) AS liczebnosc_pierwszej_tabeli, count(table2.id) AS liczebnosc_pierwszej_tabeli
  2. FROM `table1`, `table2`


Widać chyba wyraźnie, że zastępuje ono 2 kolejne zapytania, tylko czy czasami nie kwadraci się?

Tak BTW: lepiej pisać count(*) czy np. count(id) oraz czemu count(table1.*) nie działa ?

Ten post edytował kodereq 11.07.2009, 13:41:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
maly_swd
post
Post #2





Grupa: Zarejestrowani
Postów: 744
Pomógł: 118
Dołączył: 14.02.2009
Skąd: poziome

Ostrzeżenie: (0%)
-----


opisz dokladnie co chcesz uzyskac i podaj jakies przykladowe dane z tabel i jakie maja wyjsc wyniki... bo z 1 przykladu to chyba nie bardzo wyjdzie to co chcesz:)

z union mozna dac jeszcze na calosc select sum+ grupowanie i bedziesz mial 1 wynik

  1. SELECT sum(a) FROM ((SELECT count(*) AS a FROM tab1) UNION ALL
  2. (SELECT count(*) AS a FROM tab2)) AS b
  3.  
  4. GROUP BY a


wiem ze to chyba nie jest optymalne:)

Ten post edytował maly_swd 11.07.2009, 19:55:23
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 18:37