![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.08.2017 Ostrzeżenie: (0%) ![]() ![]() |
witam. Otóż mam taką tabele w bazie danych:
Tabela Klienci: Id Name ReferredBy 1 John Doe NULL 2 Jane Smith NULL 3 Anne Jenkins 2 4 Eric Branford NULL 5 Pat Richards 1 6 Alice Barnes 2 i wybieram polecenie :
wyrzuca mi wynik: name : Pat Richards Pytanie brzmi. Dlaczego nie wybiera także rekordów o wartości NULL z ReferredBy , skoro ReferredBy o wartości NULL nie jest równe 2 . Jak w zapytaniu. Prosze o pomoc Ten post edytował symer 18.11.2017, 16:13:29 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
NULL to wartość niezdefiniowana, a właściwie brak wartości, czyli nie jest możliwe jej porównanie. W przypadku tego warunku dla takich pól otrzymasz NULL, a nie true lub false.
Rozwiązaniem jest użycie w warunku IF lub COALESCE lub dodanie do niego OR ReferredBy IS NULL. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 11:04 |