Oracle
 sql >> Baza danych >  >> RDS >> Oracle

MySQL COALESCE i funkcja NULLIF

W tym poście będziemy omawiać funkcje MySQL COALESCE i NULLIF. Pokażemy również przykłady MySQL COALESCE i przykład funkcji NULLIF MySQL

Funkcja MySQL COALESCE

COALESCE  w MySQL to bardzo przydatna funkcja do wybierania pierwszych wartości niezerowych z listy wartości

Składnia

COALESCE(wart1, wart2, wart3,…wart)

Powyższa składnia jest odpowiednikiem następującej instrukcji IF-THEN-ELSE

IF val1 is not NULL THEN val1
ELSIF val2 is not NULL THEN val2
ELSIF val3 is not NULL THEN val3
ELSE NULL;
END IF

Jest to również równoważne wyrażeniu przypadku

Case
when val1 is not NULL then val1
when val2 is not NULL then val2
when val3 is not NULL then val3
else NULL
end

Wykorzystanie

Poniżej kilka przykładów funkcji COALESCE

mysql> select COALESCE(1,2,3,null);
+----------------------+
| COALESCE(1,2,3,null) |
+----------------------+
| 1 |
+----------------------+
1 row in set (0.00 sec)
mysql> select COALESCE(null,null,'a','b',null);
+----------------------------------+
| COALESCE(null,null,'a','b',null) |
+----------------------------------+
| a |
+----------------------------------+
1 row in set (0.00 sec)

mysql> select COALESCE(null;null;null);
+————————–+
| COALESCE(null;null;null) |
+————————–+
| NULL |
+————————–+
1 wiersz w zestawie (0,00 s)

Załóżmy, że masz tabelę EMP, która zawiera numer_mobilny pracownika, numer_biura i numer_domu. Może zawierać wartość null dla dowolnego z tych pól. Teraz chcesz wybrać telefon o priorytecie numer_mobilny> numer_biura> numer_domu w przypadku wartości null. Możemy więc użyć poniższego zestawienia

select emp_name, coalesce(mobile_number,office_number,home_number) contact_no from emp;

Funkcja MySQL NULLIF

Funkcja Nulif w MySQL jest bardzo użyteczną funkcją do porównywania dwóch wartości i dawania wartości null, jeśli są takie same, oraz val1 w przypadku, gdy nie są takie same

NULLIF(wartość1;wartość2)

Wykorzystanie

Poniżej znajduje się kilka przykładów wyrażenia NULLIF.

mysql> select nullif(1,2);
+————-+
| nullif(1,2) |
+————-+
| 1 |
+————-+
1 wiersz w zestawie (0,00 s)

mysql> select nullif(2,1);
+————-+
| nullif(2,1) |
+————-+
| 2 |
+————-+
1 wiersz w zestawie (0,00 s)

mysql> select nullif(1,1);
+-------------+
| nullif(1,1) |
+-------------+
| NULL |
+-------------+
1 row in set (0.00 sec)

Mam nadzieję, że ten post dotyczący bazy danych MySQL COALESCE i funkcji NULLIF okaże się interesujący i przydatny. Prześlij opinię, aby ulepszyć

Powiązane artykuły

Przewodnik krok po kroku dotyczący instalacji MySQL w systemie Windows
Kolumna automatycznego przyrostu — sekwencja jako wartość domyślna w Oracle i MySQL
51 najczęściej zadawanych pytań i odpowiedzi dotyczących MySQL w wywiadzie
Przewodnik krok po kroku, jak zbudować lokalne środowisko programistyczne Apache PHP MySQL w systemie Windows
Jak zresetować hasło roota MySQL


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zintegrować Oracle i Kafka

  2. Jak najpierw sortować według liczb za pomocą zapytania Oracle SQL?

  3. Jak wyświetlić plan wyjaśniania w programie Oracle SQL Developer?

  4. Dopasowywanie wartości zduplikowanych kolumn Oracle za pomocą Soundex, Jaro Winkler i Edit Distance (UTL_MATCH)

  5. Obróć na Oracle 10g