Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL]Jak policzyć wystąpienie takich samych rekordów?
cent4
post
Post #1





Grupa: Zarejestrowani
Postów: 415
Pomógł: 0
Dołączył: 24.12.2008

Ostrzeżenie: (10%)
X----


Mam pewne zapytanie, które listuje mi poprawnie dane z 2 tabel:
  1. SELECT m.id, m.Med, m.Kat, m.Nr_id, m.Autor, m.Tytul, m.Wydawnictwo, m.Miasto, m.Rok, m.Opis, m.Obcojezyczne, e.Nr_id, e.Med, e.Kat, e.Dostepny
  2. FROM media AS m
  3. JOIN egzempl AS e ON e.med = m.med
  4. AND e.kat = m.kat
  5. AND e.Nr_id = m.Nr_id
  6. WHERE e.Dostepny=1


Chodzi jeszcze, żeby wypisywało mi w jakiejś dodatkowej danej (powiedzmy count(*) AS lw) liczbę aktualnie dostępnych egzemplarzy jednej książki, które mają e.Dostepny=1.
Ale nie wiem jak to zrobić?
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Chodzi jeszcze, żeby wypisywało mi w jakiejś dodatkowej danej (powiedzmy count(*) AS lw)
No to dopisz to do danych w SELECT i już. Dodatkowo dodaj jeszcze GROUP BY. Więcej na temat stosowania GROUP BY znajdziesz w manualu mysql
Go to the top of the page
+Quote Post
cent4
post
Post #3





Grupa: Zarejestrowani
Postów: 415
Pomógł: 0
Dołączył: 24.12.2008

Ostrzeżenie: (10%)
X----


Zrobiłem tak:
  1. SELECT m.id, m.Med, m.Kat, m.Nr_id, m.Autor, m.Tytul, m.Wydawnictwo, m.Miasto, m.Rok, m.Opis, m.Obcojezyczne, e.Nr_id, e.Med, e.Kat, e.Dostepny, count( * ) AS lw
  2. FROM media AS m
  3. JOIN egzempl AS e ON e.med = m.med
  4. AND e.kat = m.kat
  5. AND e.Nr_id = m.Nr_id
  6. WHERE e.Dostepny =1
  7. GROUP BY e.Nr_id


Tylko, że jako lw dostaję jakieś kosmiczne liczby = 70, 34 - nie wiem co on zsumuje, bo źle to zlicza...
Jakaś wskazówka?
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Najwidoczniej twoje zapytanie dla danego e.Nr_id zwraca aż 70 rekordów. count jedynie to zlicza. Jeśli więc nie taka jest liczba to nie jest to wina count, a Twojego zapytania
Go to the top of the page
+Quote Post
cent4
post
Post #5





Grupa: Zarejestrowani
Postów: 415
Pomógł: 0
Dołączył: 24.12.2008

Ostrzeżenie: (10%)
X----


Dzięki natchnąłeś mnie - zrobiłem.
Go to the top of the page
+Quote Post

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: 23.08.2025 - 06:56