![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 30 Dołączył: 9.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Hej,
Mam takie oto 2 tabele:
W tabeli A kolumna nr jest kluczem, natomiast w tabeli B nie (jeden nr może występować wiele razy). Załóżmy, że mamy takie dane w tabeli B (nr 1 jest również obecny w tabeli A):
Próbuję wyciągnąć numery na zasadzie: nr | MAX(data1 dla danego nr) | MAX(data2 dla danego nr) | email chyba, że dla danego nr-u oba pola data1 i data2 są puste -> wtedy wyciągam nr | null | null | email. Napisałem coś takiego:
ale wynik jest pusty... Macie może jakiś pomysł jak to poprawić? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 4 Dołączył: 21.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 30 Dołączył: 9.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki ale nie do końca o to mi chodziło.
Dla danych:
Wynik powinien być:
Jeśli dany nr ma w jakimś rzędzie obie kolumny data puste, to powinien być zwracany
Jeśli natomiast nie ma obu kolumn pustych dla danego nr-u w tabeli, to zwracamy
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 4 Dołączył: 21.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 30 Dołączył: 9.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ciągle nie o to mi chodzi. Generalnie wydaje mi się, że nie da rady tego ładnie zrobić jednym zapytaniem (ale może się mylę).
Zrobiłem w końcu tak:
W PHP wynik zrzuciłem do tablicy . Następnie:
I w pętli:
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 4 Dołączył: 21.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
Racja - bo tam są MAX-y i agregacja group-em, więc null-i nie będzie.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 05:37 |