Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dlaczego not null || null = null? POMOCY
fryk
post
Post #1





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 15.03.2004
Skąd: Gdynia, Polska

Ostrzeżenie: (0%)
-----


  1. SELECT 'ala ma kota' || NULL


Result: null

Dlaczego?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Parti
post
Post #2





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 22.07.2004

Ostrzeżenie: (0%)
-----


Bo taka jest przyjęta konwencja, że jeśli jeden z operandów operatora "lub" jest null, a drugi jest false lub null, to wynik jest null. No i jeszcze dlatego, że:
  1. SELECT 'napis' || 'napis'
daje false.

Ten post edytował Parti 16.09.2004, 16:56:18
Go to the top of the page
+Quote Post
fryk
post
Post #3





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 15.03.2004
Skąd: Gdynia, Polska

Ostrzeżenie: (0%)
-----


W takim razie jak poloczyc dwa STRINGI w jednym zapytaniu jesli jedno moze byc NULL?
Go to the top of the page
+Quote Post
Jabol
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Postgresql Docs
Ojjj... a poszukać po manualu to już się nie da?
Go to the top of the page
+Quote Post
Method
post
Post #5





Grupa: Zarejestrowani
Postów: 177
Pomógł: 6
Dołączył: 14.01.2003
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


obawiam sie ze tu nie ma sensu szukac w manualu jabol
raczej w podreczniku do matematyki tam przy tautologiach byly takie fajne tabelki and or xor etc ....
Go to the top of the page
+Quote Post
tjagiel
post
Post #6





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.02.2005

Ostrzeżenie: (0%)
-----


Ja to robię tak:

if zmienna2 is not null
then zmienna_wynik := zmienna1 || zmienna2;
else zmienna_wynik := zmienna1;
end if;

Proste - ale działa (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
fryk
post
Post #7





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 15.03.2004
Skąd: Gdynia, Polska

Ostrzeżenie: (0%)
-----


To do funkcji - my mówimy o zapytaniach.

Najzdrabniejsze rozwiązanie:

SELECT COALESCE(zmienna1||zmienna2, zmienna1, 'nic')

*COASESCE - bierze pierwszy nienulowy.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 02:22