![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 1 Dołączył: 8.02.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Witam,
nie wiem czy to już gdzieś było ale szukałem i nie znalazłem. Mam takie zapytanie:
I teraz działa ładnie wszystko gdy: :: wypełnię pole zawód - wyświetla wszystkie rekordy z danym zawodem :: wypełnię pole zawód i język - wyświetla rekordy z danym zawodem i do tego z danym językiem Problem jest gdy: :: wypełnię pole zawód, wiek i język - wtedy wyświetla mi rekordy z zawodem i językiem, ale do tego również wszystkie zawierające odpowiedni wiek. Obrazując to: mam tabele: nazwisko | wiek | zawod | jezyk | malinowski | 27 | murarz | niemiecki kowlaski | 20 | murarz | niemicki i jak zawod = murarz, jezyk = niemiecki, wiek = 20 powinnien się pojawić rekord z kowalskim a pojawiają sie oba? podejrzewam że to wina AND i OR ale nie wiem jak mam to rozwiązać? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 35 Dołączył: 18.07.2008 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Zamiast takiego zapytania:
powinno być takie:
wtedy wyświetli to co chcesz -------------------- "Tylko dwie rzeczy są nieskończone: wszechświat oraz ludzka głupota,
choć nie jestem pewien co do tej pierwszej." Albert Einstein Wirtualny Rynek Predykcyjny |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 1 Dołączył: 8.02.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
tak ale w tym przypadku jak wpisze tylko sam zawód to nie wyświetla żadnego rekordu, dodatkowo jak wpisze język i zawód to też nic nie wyświetla. działa tylko w przypadku podania wszystkich 3 parametrów lub zawodu i wieku.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 140 Pomógł: 16 Dołączył: 12.06.2002 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Jeśli jakieś pola są opcjonalne to sprawdzaj wcześniej czy są wypełnione i buduj zapytanie SQL tylko z dostępnych danych.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 1 Dołączył: 8.02.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
no to chyba jest najlepsze rozwiązanie, ale to już wyższa szkoła jazdy - no ale co trzeba próbować
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:10 |