![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 1.10.2006 Skąd: Bydgoszcz Ostrzeżenie: (10%) ![]() ![]() |
Witam wysyłam do bazy zapytanie:
I wszystko jest o.k. Wyświetla mi "koszyk" jednak jeśli wyślę
To nie wyświetla mi "BRAK" tylko zwraca pusty wynik. Może jest to kwestia tego ze wartość zwracana to NULL, jednak całe zapytanie jest umieszczone w procedurze i jeśli używam z niej funkcji IFNULL nie zmienia ona niczego. Kiedy zapytanie zwraca pusty wynik jest nadal pokazywane null zamiast wartości podawanej w funkcji. Jeśli użyję IFNULL poza procedurą wszystko jest o.k. Nie wiem dlaczego tak to działa Podejmowałem też próby z I wtedy wyświetla "else" jednak kiedy zapytanie zwraca pusty wynik to jest pusty zamiast "KOSZYK" Ten post edytował szczurek 3.08.2007, 08:46:04 -------------------- "Nie masz żadnej szansy, ale ją wykorzystaj" Arthur Schopenhauer
wiersze |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 15 Dołączył: 19.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
To Ci nigdy nie zadziala w ten sposob, a to dlatego ze warunek IF w instrukcji SELECT jest stosowany dla kazdego znalezionego rekordu, a jak nie znajdzie zadnego rekordu to wogole nie jest wykonywany!
Sprobuj raczej:
A tak wogole to co Ty chcesz osiagnac tymi zapytaniami? |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 1.10.2006 Skąd: Bydgoszcz Ostrzeżenie: (10%) ![]() ![]() |
Dzięki, dodając is null obsługuje mi ładnie również nieznane wartości.
Natomiast mam jeszcze jedno pytanie, jak wywołać procedurę jako podzapytanie? Chodzi o to, że funkcje nie mogą korzystać z zapytań, pobieram więc dane procedurą, ale jako jej parametr potrzebuję podać wartość zwracaną przez zapytanie główne. Chciałbym żeby wyglądało to tak
Ale oczywiście w tak nie działa. Jak to zrobić? Oczywiście poza zmianą DBMS'a na taki gdzie funkcje obsługują zapytanie SQL; Pozdrawiam P.s. Lub chociaż czy procedura w jakiś sposób może być argumentem funkcji? Zwyczajnie select funkcja(procedura()); oczywiście się nie da Ten post edytował szczurek 3.08.2007, 19:54:36 -------------------- "Nie masz żadnej szansy, ale ją wykorzystaj" Arthur Schopenhauer
wiersze |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 12:05 |