Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 15127|Odpowiedź: 0

[Źródło] Użycie IFNULL, NULLIF i ISNULL

[Skopiuj link]
Opublikowano 11.05.2018 13:37:59 | | |
Użycie słów isnull, ifnull, nullif jest następujące:

Użycie isnull(expr):Jeśli expr jest null, to isnull() zwraca wartość 1, w przeciwnym razie zwraca 0.
mysql> select isnull(1+1);
-> 0
mysql> select isnull(1/0);
-> 1
Użycie = dla porównań wartości zerowych jest zazwyczaj błędne.

Funkcja isnull() dzieli niektóre te same cechy co operator porównania nulowego is . Zobacz notatkę o jest null.

Użycie IFNULL (expr1,expr2):

Jeśli expr1 nie jest NULL, wartość zwrotu IFNULL() to expr1;
W przeciwnym razie zwraca wartość expr2. IFNULL() zwraca albo liczbę, albo ciąg znaków, w zależności od kontekstu, w którym jest używany.

mysql> SELECT IFNULL(1,0);
-> 1
mysql> SELECT IFNULL(NULL,10);
-> 10
mysql> SELECT IFNULL(1/0,10);
-> 10
mysql> SELECT
IFNULL(1/0,'tak');

-> 'tak'

Domyślna wartość wynikowa dla IFNULL(expr1,expr2) to bardziej "ogólna" z tych dwóch wyrażeń, w kolejności STRING, REAL lub
INTEGER。 Załóżmy sytuację, w której tabela oparta na wyrażeniach, czyli MySQL, musi przechowywać wartość zwrotu IFNULL() w tymczasowej tabeli w pamięci wewnętrznej:
CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
W tym przykładzie kolumna testowa ma typ CHAR(4).
Użycie NULLIF(expr1,expr2):  
Jeśli expr1
= expr2 jest prawdziwe, wtedy wartość zwrotu to NULL, w przeciwnym razie wartość zwrotu to expr1. Jest to takie samo co PRZYPADEK, GDY expr1 = expr2
TO NULL ELSE expr1 KONIEC jest taki sam.
mysql> SELECT
NULLIF(1,1);

-> NULL
mysql> SELECT NULLIF(1,2);
-> 1
Jeśli parametry nie są równe, MySQL otrzymuje wartość expr1 dwukrotnie.






Poprzedni:Test wydajności sprzętu procesora serwera
Następny:Używając MySQL do przetwarzania ponad miliona poziomów danych, istnieje kilka zdrowych rozsądków, które należy znać
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com