Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Problem z konstrukcją zapytania
krzesik
post
Post #1





Grupa: Zarejestrowani
Postów: 517
Pomógł: 1
Dołączył: 25.08.2012

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


Witam, coś mam kłopot z poprawną konstrukcją zapytania, proszę o pomoc w temacie

mam tabelę tab1

id_tab1 | nazwisko | data

1 | Kowalski | 2016-08-04
2 | Maliniak | 2016-09-24
3 | Kowalski | 2016-10-05
4 | Stefaniak | 2016-11-04

oraz drugą tabelę tab2

id_tab2 | id_tab1 | ilosc
1 | 1 | 1
2 | 1 | 2
3 | 1 | 1
4 | 2 | 1
5 | 2 | 1
6 | 3 | 1


muszę podać wynik w postaci:
- ilość wizyt poszczególnych klientów wg nazwisk
- ilość zabiegów
ograniczając do daty początkowej większej niż...

wiem jak policzyć ilość wizyt:
  1. $pyt1 = "select nazwisko as NazwiskoPacjenta, count(nazwisko) as IloscWizyt WHERE data>='RRR-MM-DD'";

próbowałem połączyć tabele JOIN-em, ale jeśli jest więcej rekordów niż jeden to źle mi zaczyna liczyć......

prosze o pomoc

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
krzesik
post
Post #2





Grupa: Zarejestrowani
Postów: 517
Pomógł: 1
Dołączył: 25.08.2012

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


i jeszcze male pytanie, dlaczego mam zwrotkę z zapytanie że kolumna t2.start jest nieznana?

  1. SELECT
  2.  
  3. IF(MONTH(`t2.start`)>3,cast(CONCAT(YEAR(`t2.start`), '/', YEAR(`t2.start`)+1) AS char),cast(CONCAT(YEAR(`t2.start`)-1, '/', YEAR(`t2.start`)) AS char)) AS `sezon`,
  4. t2.start AS DATA, t2.imie_nazwisko, count(DISTINCT t2.id_book) AS wizyty, sum(t1.ilosc) AS ilosc
  5. FROM tabela1 AS t1,tabela2 AS t2
  6. WHERE t1.id_book=t2.id_book AND sezon='2016/2017' GROUP BY t2.imie_nazwisko


jeśli usunę IF....... to mam daty poprawne, ale muszę później filtrować po sezonie
Go to the top of the page
+Quote Post

Posty w temacie
- krzesik   [MySQL]Problem z konstrukcją zapytania   21.11.2016, 20:00:44
- - trueblue   Połącz tak jak łączyłeś, albo poprzez WHERE. Po WH...   21.11.2016, 20:08:23
- - Kshyhoo   Jeżeli druga tablica zawiera odnośniki do ID z pie...   21.11.2016, 20:25:51
- - krzesik   coś jest chyba nie tak, mam połączyć tabele poprze...   21.11.2016, 20:54:13
- - Kshyhoo   Moje zapytanie liczy ilość zabiegów (zlicza ilości...   21.11.2016, 20:58:53
- - trueblue   Łączysz przez id_tab1 Żadne podzapytania nie są po...   21.11.2016, 20:59:04
- - Kshyhoo   Napisz, co zawierają obie tabele.   21.11.2016, 20:59:51
- - krzesik   dokładnie to: tab1 id_tab1 | nazwisko | data 1 |...   21.11.2016, 21:06:02
- - Kshyhoo   Wynik mojego zapytania: [PHP] pobierz, plaintext +...   21.11.2016, 21:28:56
- - krzesik   Oczekiwałbym wyniku: [SQL] pobierz, plaintext +---...   21.11.2016, 22:30:42
- - Kshyhoo   To by trzeba podzapytaniami robić. Lepiej zmienić ...   21.11.2016, 22:48:17
- - trueblue   Co przechowują poszczególne pola w tabeli tab2?   21.11.2016, 22:48:30
- - krzesik   - id rekordu - id rekordu wizyty - ilość zabiegów   21.11.2016, 22:51:25
- - trueblue   To teraz powiedz na jakiej podstawie w Twojej tabe...   21.11.2016, 23:01:44
- - krzesik   i jeszcze male pytanie, dlaczego mam zwrotkę z zap...   22.11.2016, 19:20:28
- - trueblue   `t2`.`start` albo t2.`start...   22.11.2016, 19:25:49
- - krzesik   ok bez warunku sezon='2016/2017' działa, a...   22.11.2016, 20:29:59
- - trueblue   W klauzuli WHERE nie można używać warunku opartego...   22.11.2016, 20:33:11


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: 14.10.2025 - 20:49