![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 0 Dołączył: 24.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Sorry, że tak z partyzanta po wielu miesiącach nieobecności na forum, ale mózg już się stopił i nie idzie ruszyć dalej.
Mam 2 tabele: Tabela a: --------------------------------------- id_a | nazwa_a | populacja --------------------------------------- 3 | kot | 0 4 | pies | 2 5 | lis | 10 6 | wilk | 0 7 | dzik | 3 --------------------------------------- Tabela b: ----------------------------------------- id_b | data_b | historia ----------------------------------------- 4 | 20.02.2014 | 2 5 | 25.03.2014 | 8 5 | 10.05.2014 | 8 3 | 10.06.2014 | 0 5 | 10.07.2014 | 9 5 | 15.09.2014 | 10 ----------------------------------------- Potrzebuję wyciągnąć pogrupowaną listę istniejącej (populacja>0) populacji zwierząt, którym odnotowano wzrost populacji do dnia np. 01.09.2014 ale pomijając rekordy (nazwy zwierząt), którym zaktualizowano informacje (data_b) po terminie 01.09.2014. oraz wszystkie zwierzęta pozostałe o dodatniej populacji, nie posiadające historii zmian w tabeli b. Czyli z powyższych tabel interesuje mnie, aby pobrać: 1) pies | id 4 | populacja 2 2) dzik | id 7 | populacja 3 ** kota nie pobiera ponieważ jest 0 kotów *** lisa nie pobiera, ponieważ ostatnia aktualizacja miała miejsce po 01.09.2014 Próbowałem coś takiego: SELECT * FROM tabela_a LEFT JOIN tabela_b ON (tabela_a.id_a = tabela_b.id_b) WHERE populacja>0 AND data_b < $data_01_09_2014 Oczywiście nie zadziała, ponieważ pominie rekord z 15.09.2014 i wyświetli kota z datą 10.07.2014, a ja chciałbym zastosować warunek wyszukiwania z tabeli a, tylko w przypadku, gdy w babeli b nie ma wpisu do danego id z określoną datą. Jakieś wskazówki...? Ten post edytował graft 16.09.2014, 18:34:12 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 14:10 |