logo

MySQL CASE kifejezés

A MySQL CASE kifejezés a vezérlőfolyamat függvény része, amely lehetővé teszi számunkra, hogy írjunk egy ha-más vagy ha-akkor-más logika egy lekérdezéshez. Ez a kifejezés bárhol használható, amely érvényes programot vagy lekérdezést használ, például SELECT, WHERE, ORDER BY záradék stb.

A CASE kifejezés különböző feltételeket érvényesít, és visszaadja az eredményt, amikor az első feltétel igaz . Ha a feltétel teljesül, leállítja a mozgást, és kiadja a kimenetet. Ha egyetlen feltételt sem talál igaznak, akkor végrehajtja a más blokk . Ha az else blokk nem található, akkor visszaadja a NULLA érték. A fő cél a MySQL A CASE utasítás több IF utasítás kezelésére szolgál a SELECT záradékban.

A CASE utasítást kétféleképpen használhatjuk, amelyek a következők:

1. Egyszerű CASE utasítás:

Az első módszer az, hogy veszünk egy értéket, és párosítjuk az adott utasítással, az alábbiak szerint.

megegyezik a java-val

Szintaxis

 CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE result] END 

Visszaadja az eredményt, amikor az első érték összehasonlítása az összehasonlítás igazzá válik. Ellenkező esetben az else záradékot adja vissza.

Példa

 mysql> SELECT CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END; 

Kimenet

A fenti parancs sikeres végrehajtása után a következő kimenetet fogjuk látni.

MySQL CASE kifejezés

2. Keresett CASE utasítás:

A második módszer az a keresési_feltétel ban,-ben AMIKOR záradékot, és ha talál, adja vissza az eredményt a megfelelő THEN záradékban. Ellenkező esetben az else záradékot adja vissza. Ha más záradék nincs megadva, akkor NULL értéket ad vissza.

Szintaxis

 CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END 

Példa

 mysql> SELECT CASE BINARY 'B' WHEN 'a' THEN 1 WHEN 'b' THEN 2 END; 

Kimenet

hogyan lehet ellenőrizni a blokkolt számokat androidon

MySQL CASE kifejezés

Visszatérés típusa

A CASE kifejezés az eredményt adja vissza attól függően, hogy milyen környezetben használják. Például:

  • Ha a szövegkörnyezetben használják, akkor a karakterlánc eredményét adja vissza.
  • Ha numerikus kontextusban használja, akkor egész, lebegő és decimális értéket ad vissza.

MySQL verzió támogatás

A CASE utasítás a következő MySQL verziókat támogatja:

  • MySQL 8.0
  • MySQL 5.7
  • MySQL 5.6
  • MySQL 5.5
  • MySQL 5.1
  • MySQL 5.0
  • MySQL 4.1
  • MySQL 4.0
  • MySQL 3.23.3

Hozzunk létre egy táblázatot hallgatók ' és hajtsa végre a CASE utasítást ezen a táblán.

MySQL CASE kifejezés

A fenti táblázatban láthatjuk, hogy a osztályos oszlop a hallgatói tagozat rövid formáját tartalmazza. Ezért a tanszék rövid formáját teljes formára cseréljük. Most hajtsa végre a következő lekérdezést a művelet végrehajtásához.

 SELECT studentid, firstname, CASE class WHEN 'CS' THEN 'Computer Science' WHEN 'EC' THEN 'Electronics and Communication' ELSE 'Electrical Engineering' END AS department from students; 

A fenti lekérdezés sikeres végrehajtása után a következő kimenetet kapjuk. Itt láthatjuk, hogy a osztály oszlop a teljes formát tartalmazza rövid forma helyett.

MySQL CASE kifejezés