Hvordan bruke SQL OR
Operatoren OR i SQL kan optimalisere søket etter poster ved å begrense resultatene til de som oppfyller minst ett av kriteriene dine. Du kan kombinere den med andre logiske operatorer, som AND og NOT, for å gjøre komplekse spørringer raskere og mer effektive.
Hva er SQL OR?
SQL-operatoreneAND, NOT og OR er blant de viktigste når det gjelder å søke etter relevant informasjon. Mens AND finner data som oppfyller to eller flere betingelser og NOT definerer kriterier som skal utelates fra resultatene, gir OR mulighet for mer fleksible søk. Den lar deg definere flere søkekriterier, hvorav minst ett må oppfylles av resultatene. Fordelen er at du kan få relevante resultater som ikke nødvendigvis oppfyller alle de oppførte kriteriene.
Siden SQL OR brukes til å formulere søkekriterier, brukes det ofte sammen med SELECT og WHERE. SELECT angir de aktuelle postene og kolonnene, mens WHERE angir søkekriteriene. For å gjøre søket enda mer presist kan du kombinere OR med andre logiske operatorer som AND og NOT eller sammenligningsoperatorer som =.
Hva er forskjellen mellom SQL OR, AND og NOT?
Her er forskjellene mellom SQL OR, AND og NOT:
SQL OR |
SQL AND |
SQL NOT |
|---|---|---|
| Filtrerer poster som oppfyller minst ett av vilkårene | Filtrerer data som oppfyller alle betingelsene | Utelater informasjon som ikke oppfyller et vilkår |
| Utvider søket med annen informasjon | Begrenser søket til en kombinasjon av betingelser, som begge er oppfylt | Utelater irrelevant informasjon ved hjelp av ekskluderingskriterier |
Har du ingen erfaring med SQL? Ikke noe problem! Vår innføring i SQL med eksempler gir deg et lynkurs i grunnleggende kunnskap.
Hva er syntaksen i SQL OR?
Den grunnleggende syntaksen til OR ser slik ut:
SELECT *
FROM Table
WHERE condition1 OR condition2 OR …sqlDen bruker følgende parametere:
SELECT: Velger kolonnene du ønsker å hente data fra, ved hjelp av primærnøkler og fremmednøkler. Du kan bruke en stjerne*for å velge alle kolonnene.FROM: Angir hvilken tabell du vil søke i.WHERE: Definerer søkebetingelser ved hjelp av operatorer og andre parametere.OR: Logisk operator som brukes sammen medWHEREfor å definere søkekriterier.
Du kan også kombinere OR med NOT og AND i søket ditt for å avgrense søket ytterligere.
SQL OR kombinert med AND
I dette eksemplet filtrerer WHERE-klausulen etter resultater der både betingelse 1 og minst én av betingelsene 2 eller 3 er oppfylt.
SELECT *
FROM Table
WHERE condition1 AND (condition2 OR condition3)sqlSQL OR kombinert med SQL NOT
Du kan kombinere SQL OR med NOT for å ekskludere data som oppfyller minst ett av de oppførte vilkårene.
SELECT *
FROM Table
WHERE NOT (condition1 OR condition2)sqlHva kan SQL OR brukes til?
Du kan bruke OR -operatoren til å søke i komplekse datasett basert på flere kriterier. Her er noen eksempler på bruksområder:
- Filtrering av kunde-, ordre- og produktdata basert på kombinerte søkekriterier som produktkategorier, produktegenskaper eller datoer for ordre og klager
- Søke etter selskaper i bestemte bransjer eller regioner
- Filtrering av mistenkelige eller ugyldige transaksjoner ved hjelp av flere betingelser
- Søke etter informasjon om ansatte fra en bestemt avdeling eller et bestemt team
- Hente frem søkere som ikke har en grad eller ikke har arbeidserfaring
Eksempler på SQL OR
Operatoren OR har utallige bruksområder når den kombineres med WHERE, andre SQL-operatorer og andre SQL-funksjoner. Nedenfor skal vi se på tre eksempler, slik at du kan få et bedre inntrykk av hvordan OR fungerer.
Søke etter bestillinger fra bestemte kategorier
La oss si at du vil søke i en kundetabell etter personer som har bestilt produkter fra enten kategorien «Elektronikk» eller «Hår», eller begge deler. Resultatene vil kun inneholde poster som oppfyller minst ett av de to vilkårene. Vi bruker sammenligningsoperatoren = for å angi kategoriene.
Syntaksen for dette ser slik ut:
SELECT *
FROM Customers
WHERE (Category = 'Electronics' OR Category = 'Hair')sqlSortering av søkere
I dette eksemplet har vi en tabell som heter «Applicants». Vi ønsker å finne personene i tabellen som har en utdannelse innen elektroteknikk eller IT og minst tre års arbeidserfaring. For å gjøre dette kombinerer vi OR og AND. Søket ser slik ut:
SELECT *
FROM Applicants
WHERE (Degree = 'Electrical engineering' OR Degree = 'IT')
AND (Experience >= 3)sqlSøk etter region
I vårt siste eksempel ønsker vi å søke etter kunder fra Frankrike eller Tyskland i en tabell som heter «Kunder». Syntaksen for dette ser slik ut:
SELECT *
FROM Customers
WHERE Country = 'France' OR Country = 'Germany'sqlFinnes det alternativer til SQL OR?
Operatoren OR gir en enkel og rask måte å søke på basert på flere kriterier. Disse SQL-operatorene har et lignende formål:
CASE: SQL-uttrykket CASE kan også brukes sammen medWHERE,THENogELSEfor å sjekke betingelser og begrense komplekse analyser til relevante resultater. Det evalueres ved hjelp av en «IF-THEN-ELSE»-setning og går gjennom betingelsene fra bunnen og opp. Analysen avsluttes når en av betingelsene er oppfylt.IN: OperatorenINkan brukes i enWHEREfor å undersøke poster. Du kan definere verdier eller strenger ved hjelp avINog deretter søke etter treff i tabeller eller kolonner.EXISTS: SQLs EXISTS kan brukes i en tabell for å sjekke om minst én post fra en annen tabell samsvarer med den første tabellen. Hvis det er minst én samsvar, vil resultatet bli lagt til måltabellen. Denne operatoren er kun nyttig hvis du arbeider med to relaterte tabeller.