Hvordan bruke en saksuttalelse med flere forhold

Hvordan bruke en saksuttalelse med flere forhold
Mens han jobber med enorme datamengder, ønsker brukeren å utføre handlinger basert på flere forhold. I mysql, "SAK”Uttalelse gir en effektiv måte å håndtere slike situasjoner. “SAK”Uttalelse brukes til å definere flere forhold og deres tilsvarende handlinger som skal utføres når disse betingelsene er oppfylt. Dette innlegget vil diskutere hvordan du bruker "SAK”Uttalelse i MySQL med flere forhold ved bruk av logiske operatører”OG”Og“ELLER“.

Forutsetning: Logg inn på den lokale MySQL -serveren

Før du begynner på dette innlegget, må du huske å logge deg på din lokale MySQL -server ved å bruke denne syntaks:

mysql -u -p

Oppgi navnet på MySQL -serveren din, og brukernavnet for dette innlegget er "MD”Så kommandoen ville bli:

mysql -u md -p

Etter den vellykkede påloggingen, endre databasen du vil ha arbeid ved å bruke syntaks:

bruk ;

Navnet på databasen, for dette innlegget er "Linuxhint”Så kommandoen vil være:

Bruk Linuxhint;

Utgangen vil vise meldingen “Databasen endret”:

Du har endret deg til ønsket database.

Hva er "saken" -uttalelsen i MySQL?

SAK”Uttalelse er et betinget uttrykk i MySQL for å definere forhold og tilsvarende handlinger som skal utføres basert på disse forholdene. Du kan definere forhold for å utføre deres tilsvarende handlinger hvis tilstanden er sann; Ellers kjør "ELLERS" handling. Flere forhold kan defineres i en "NÅR”Klausul ved å bruke de logiske operatørene mellom dem.

Syntaks for "saken" -uttalelsen

Syntaksen til “SAK”Uttalelse er:

PLUKKE UT *,
SAK
Når [condition_1] så [output1]
Når [condition_2] så [output2]
Ellers [output3]
Slutt som [kolonnenavn]
Fra [tabellnavn];

La oss fordele denne syntaksen, her:

  • PLUKKE UT *”Brukes til å velge alle kolonnene i den spesifiserte tabellen
  • SAK”Uttalelsen starter med“SAK”Søkeord etterfulgt av to eller flere“NÅR”Klausuler for å definere flere forhold.
  • Hver "NÅR”Clause definerer en tilstand, hvis tilstanden er sann, blir den tilsvarende utgangen returnert som er angitt etter“DERETTER" klausul
  • Hvis ingen tilstand er sann, returneres utgangen som er angitt i "ELLERS" klausul
  • SLUTT”Nøkkelord brukes til å merke slutten av“SAK”Uttalelse
  • Som [kolonnenavn]”Brukes til å definere et navn for kolonnen som vil vise resultatet av“SAK”Uttalelse

Eksempel på sakserklæring for rekkeviddebasert gruppering
Å definere utgangen for gruppering basert på en tilstand hvis "Id”Fra bordet“ansatt”Kommer i området definert i“NÅR”Klausul og vis sin utgang i kolonnen som heter“Id”. Kjør kommandoen gitt nedenfor:

PLUKKE UT *,
SAK
Når ID mellom 1 og 5 så '1-5'
Når ID mellom 6 og 10 så '6-10'
Annet 'større enn 10'
Slutt som id
Fra ansatt;

Utgangen viser “1-5”Der“ id ”ligger mellom”1" til "5”,“6-10" hvor i "Id" ligger i "6" til "10”Ellers hvis begge betingelsene ikke er oppfylt, viser utdataene“Større enn 10”:

Saksuttalelse med flere forhold ved bruk av logisk "og" -operatør

SAK”Uttalelse kan definere flere forhold ved bruk av det logiske”OG”Operatør. Syntaks for “NÅR”Operatør med flere forhold ved bruk av“OG”Operatør er gitt nedenfor:

PLUKKE UT *,
SAK
Når [condition_1] og [condition_2] så [output]
Når [condition_3] og [condition_4] så [output]
Ellers [output]
Slutt som [kolonnenavn]
Fra [tabellnavn];

La oss se et eksempel til "PLUKKE UT""Id”,“Selskapsnavn”Og“Kontakt navn”Kolonner fra tabellen”ansatt" å vise "Kategori 1”Hvis“By”Og“Land”Er lik“Osaka”Og“JapanHenholdsvis eller vises "Kategori 2”Hvis de er lik“London”Og“Storbritannia”. Hvis forholdene i “NÅR”Klausulen oppfyller ikke retur”Ukjent”. Utgangen skal vises i en kolonne som heter “By”. Kommandoen for det gitte eksemplet er gitt nedenfor:

Velg ID, CompanyName, ContactName,
SAK
Når by = 'Osaka' og country = 'Japan' da 'kategori #1'
Når by = 'London' og Country = 'UK' så 'kategori #2'
Annet 'ukjent'
Slutt som by
Fra ansatt;

Utgangen viser en kolonne “By”Det er å kategorisere poster basert på flere forhold:

La oss se et annet eksempel til "PLUKKE UT""Id”Og“Produktnavn”Kolonner fra tabellen”Produkt" å vise "Lav pris”,“Midtpris”Og“Høy pris”Hvis“Enhetspris”Ligger i de definerte områdene ved å bruke sammenligningsoperatørene og“OG”Operatør mellom to forhold under en“NÅR" klausul. Ellers, hvis "NÅR”Klausulforholdene er ikke oppfylt, returnerer”Ukjent”. Utgangen skal vises i en kolonne som heter “Enhetspris”. Kommandoen for det gitte eksemplet er gitt nedenfor:

Velg ID, produktnavn,
SAK
Når UnitPrice> = 1 og UnitPrice = 16 og UnitPrice = 31, så 'høy pris'
Annet 'ukjent'
Avslutt som UnitPrice
Fra produktet;

Utgangen vises i kolonnen "Enhetspris”:

Saksuttalelse med flere forhold ved bruk av logisk “eller” -operatør

SAK”Uttalelse kan definere flere forhold ved bruk av det logiske”ELLER”Operatør. Syntaks for “NÅR”Operatør med flere forhold ved bruk av“ELLER”Operatør er gitt nedenfor:

PLUKKE UT *,
SAK
Når [condition_1] eller [condition_2] så [output]
Når [condition_3] eller [condition_4] så [output]
Ellers [output]
Slutt som [kolonnenavn]
Fra [tabellnavn];

La oss se et eksempel, til "PLUKKE UT""Id”,“Selskapsnavn”Og“Kontakt navn”Kolonner fra tabellen”ansatt”For å vise kategorier hvis“By”Og“Land”Er lik en viss verdi. "Eller" -operatøren brukes mellom to forhold i en "NÅR" klausul. Ellers, hvis "NÅR”Klausulforholdene er ikke oppfylt, returnerer”Ukjent”. Utgangen skal vises i en kolonne som heter “By”. Kommandoen for gitteksempel er gitt nedenfor:

Velg ID, CompanyName, ContactName,
SAK
Når by = 'Osaka' eller Country = 'Japan' så 'kategori #1'
Når by = 'London' eller Country = 'UK' så 'kategori #2'
Når land = 'USA' så 'kategori #3'
Annet 'ukjent'
Slutt som by
Fra ansatt;

Utgangen viser verdiene i kolonnen "By”Ekstrahert gjennom“SAK”Uttalelse med flere forhold:

La oss se et annet eksempel, til "PLUKKE UT""Id”,“Fornavn”,“Etternavn”Og“Telefon”Kolonner fra tabellen”Kunde”For å vise kategorier hvis“By" eller "Land”Verdien er lik de definerte verdiene. Hvis forholdene i “NÅR”Klausul ikke oppfyller, returnerer”Ukjent”. Utgangen skal vises i en kolonne som heter “By”. Kommandoen for gitteksempel er gitt nedenfor:

Velg ID, FirstName, LastName, Telefon,
SAK
Når by = 'Berlin' eller Country = 'Tyskland' så 'kategori #1'
Når by = 'London' eller Country = 'UK' så 'kategori #2'
Når by = 'luleå' eller country = 'Sverige' så 'kategori #3'
Når by = 'Strasbourg' eller country = 'Frankrike' så 'kategori #4'
Når by = 'Graz' eller Country = 'Østerrike' så 'kategori #5'
Annet 'ukjent'
Slutt som by
Fra kunde;

Spørringen vil utføre og returnere utgangen som inneholder kolonnen “By”For å vise kategorier i henhold til flere forhold:

Det oppsummerer alle de forskjellige metodene for å bruke saksuttalelsen med flere betingelser.

Konklusjon

SAK”Uttalelse i MySQL brukes til å definere kompleks og dynamisk logikk ved å definere flere forhold i en”NÅR”Klausul ved å bruke den logiske”OG”Og“ELLER”Operatører. “ELLERS”Klausulen utføres hvis ingen betingelser er oppfylt. På slutten av uttalelsen må du forsikre deg om at du bruker nøkkelordet "slutt".