sql >> Databasteknik >  >> RDS >> Oracle

MySQL COALESCE och NULLIF Funktion

Vi kommer att diskutera MySQL COALESCE och NULLIF Function i det här inlägget. Vi kommer också att visa MySQL COALESCE -exempel och NULLIF MySQL-funktionsexempel

MySQL COALESCE-funktion

COALESCE i MySQL är en mycket användbar funktion för att välja först inte null-värden från värdelistan

Syntax

COALESCE(val1, val2,val3,…valn)

Ovanstående syntax motsvarar följande IF-THEN-ELSE-sats

OM val1 inte är NULL THEN val1
ELSIF val2 är inte NULL THEN val2
ELSIF val3 är inte NULL THEN val3
ANST NULL;
END IF

Detta motsvarar också kasusuttrycket

Fall
när val1 inte är NULL då val1
när val2 inte är NULL då val2
när val3 inte är NULL då val3
annat NULL
slut

Användning

Nedan finns några exempel på COALESCE-funktion

mysql> välj COALESCE(1,2,3,null);
+---------------------------+
| COALESCE(1,2,3,null) |
+---------------------------+
| 1 |
+----------------------+
1 rad i set (0,00 sek)
mysql> välj COALESCE (null,null,'a','b',null);
+----------------------------------- -----+
| COALESCE(null,null,'a','b',null) |
+---------------------------------- ------+
| a |
+-----------------------------------------+
1 rad i set (0,00 sek)

mysql> välj COALESCE(null,null,null);
+————————–+
| COALESCE(null,null,null) |
+————————–+
| NULL |
+————————–+
1 rad i set (0,00 sek)

Anta att du har en tabell EMP som innehåller anställds mobilnummer, kontorsnummer och hemnummer. Den kan innehålla ett nollvärde för något av dessa fält. Nu vill du välja telefonen i prioritet mobilnummer> kontorsnummer> hemnummer vid nollvärden. Så vi kan använda nedanstående sammansmältning

välj emp_name, coalesce(mobile_number, office_number,home_number) contact_nr from emp;

MySQL NULLIF-funktion

Nullif-funktion i MySQL är en mycket användbar funktion för att jämföra två värden och ge null om de är lika, ge val1 om de inte är samma

NULLIF(val1;val2)

Användning

Nedan finns några exempel på NULLIF-satsen.

mysql> välj nullif(1,2);
+————-+
| nullif(1,2) |
+————-+
| 1 |
+————-+
1 rad i set (0,00 sek)

mysql> välj nullif(2,1);
+————-+
| nullif(2,1) |
+————-+
| 2 |
+————-+
1 rad i set (0,00 sek)

mysql> välj nullif(1,1);
+-------------+
| nullif(1,1) |
+-------------+
| NULL |
+-------------+
1 rad i set (0,00 sek)

Jag hoppas att du tycker att det här inlägget om MySQL Database COALESCE och NULLIF Function är intressant och användbart. Vänligen ge feedback för att förbättra

Relaterade artiklar

Steg-för-steg-guide för att installera MySQL på Windows
Automatisk ökningskolumn – Sekvens som standardvärde i Oracle och MySQL
Topp 51 vanliga frågor och svar på MySQL-intervjuer
Steg-för-steg-guide för att bygga lokal Apache PHP MySQL-utvecklingsmiljö i Windows
Hur återställer du MySQL root-lösenordet


  1. Hur man exporterar en databas med phpMyAdmin

  2. Vilka är skillnaderna mellan utf8_general_ci och utf8_unicode_ci?

  3. CHARTOROWID() Funktion i Oracle

  4. hur kan jag uppdatera topp 100 poster i sql server