Hur man använder SQL OR
OR -operatorn kan optimera din sökning efter poster genom att begränsa resultaten till de som uppfyller minst ett av dina villkor. Du kan kombinera den med andra logiska operatorer som AND och NOT för att påskynda och förbättra komplexa sökningar.
Vad är SQL OR?
SQL:s AND, NOT och OR är några av de viktigaste SQL-operatorerna för att söka efter relevant information. Medan AND hittar data som uppfyller två eller flera villkor och NOT definierar kriterier som ska utelämnas från resultaten, möjliggör OR mer flexibla sökningar. Det låter dig definiera flera sökkriterier, varav minst ett måste uppfyllas av resultaten. Fördelen är att du kan få relevanta resultat som inte nödvändigtvis uppfyller alla angivna kriterier.
Eftersom SQL OR används för att formulera sökkriterier används det ofta tillsammans med SELECT och WHERE. SELECT specificerar de aktuella posterna och kolumnerna och WHERE specificerar sökkriterierna. För att göra din sökfråga ännu mer precis kan du kombinera OR med andra logiska operatorer som AND och NOT eller jämförelseoperatorer som =.
Vad är skillnaden mellan SQL OR, AND och NOT?
Här är skillnaderna mellan SQL OR, AND och NOT:
SQL OR |
SQL AND |
SQL NOT |
|---|---|---|
| Filtrerar poster som uppfyller minst ett av villkoren | Filtrerar data som uppfyller alla villkor | Utelämnar information som inte uppfyller ett villkor |
| Utvidgar sökningen med annan information | Begränsar sökningen till en kombination av villkor som båda är uppfyllda | Utelämnar irrelevant information med hjälp av kriterier för uteslutning |
Ingen erfarenhet av SQL? Inga problem! Vår introduktion till SQL med exempel ger dig en snabbkurs i grunderna.
Vad är syntaxen för SQL OR?
Den grundläggande syntaxen för OR ser ut som följer:
SELECT *
FROM Table
WHERE condition1 OR condition2 OR …sqlDen använder följande parametrar:
SELECT: Väljer de kolumner du vill hämta data från med hjälp av primära och främmande nycklar. Du kan använda en asterisk*för att välja alla kolumner.FROM: Anger vilken tabell du vill söka i.WHERE: Definierar sökvillkor med hjälp av operatorer och andra parametrar.OR: Logisk operator som används tillsammans medWHEREför att definiera sökkriterier.
Du kan också kombinera OR med NOT och AND i din sökning för att ytterligare begränsa sökningen.
SQL OR i kombination med AND
I det här exemplet filtrerar WHERE-satsen efter resultat där både villkor 1 och minst ett av villkoren 2 eller 3 är sanna.
SELECT *
FROM Table
WHERE condition1 AND (condition2 OR condition3)sqlSQL OR i kombination med SQL NOT
Du kan kombinera SQL OR med NOT för att utesluta data som uppfyller minst ett av de angivna villkoren.
SELECT *
FROM Table
WHERE NOT (condition1 OR condition2)sqlVad kan SQL OR användas till?
Du kan använda OR -operatorn för att söka i komplexa datamängder baserat på flera kriterier. Här är några användningsfall:
- Filtrering av kund-, order- och produktdata baserat på kombinerade sökkriterier som produktkategorier, produktegenskaper eller order- och reklamationsdatum
- Söka efter företag i vissa branscher eller regioner
- Filtrera misstänkta eller ogiltiga transaktioner med hjälp av flera villkor
- Söka efter information om anställda från en specifik avdelning eller ett specifikt team
- Hämta sökande som inte har en examen eller arbetslivserfarenhet
Exempel på SQL OR
Det finns otaliga användningsområden för operatorn OR när den kombineras med WHERE, andra SQL-operatorer och andra SQL-funktioner. Nedan tittar vi på tre exempel så att du får en bättre uppfattning om hur OR fungerar.
Söka efter order från vissa kategorier
Anta att du vill söka i en kundtabell efter personer som har beställt produkter från endera eller båda kategorierna “Elektronik” och “Hår”. Resultaten kommer endast att inkludera poster som uppfyller minst ett av de två villkoren. Vi använder jämförelseoperatorn = för att ange kategorierna.
Syntaxen för detta ser ut som följer:
SELECT *
FROM Customers
WHERE (Category = 'Electronics' OR Category = 'Hair')sqlFiltrering av sökande
I det här exemplet finns en tabell som heter ”Sökande”. Vi vill hitta de personer i tabellen som har en examen i elektroteknik eller IT och minst tre års arbetserfarenhet. För att göra detta kombinerar vi OR och AND. Sökningen ser ut som följer:
SELECT *
FROM Applicants
WHERE (Degree = 'Electrical engineering' OR Degree = 'IT')
AND (Experience >= 3)sqlSökning baserad på region
I vårt sista exempel vill vi söka efter kunder från Frankrike eller Tyskland i en tabell som heter “Kunder”. Syntaxen för det ser ut som följer:
SELECT *
FROM Customers
WHERE Country = 'France' OR Country = 'Germany'sqlFinns det alternativ till SQL OR?
Operatorn OR erbjuder ett enkelt och snabbt sätt att söka utifrån flera villkor. Dessa SQL-operatorer har ett liknande syfte:
CASE: SQL:s CASE-uttryck kan också användas medWHERE,THENochELSEför att kontrollera villkor och begränsa komplexa analyser till relevanta resultat. Det utvärderas med hjälp av ett “IF-THEN-ELSE”-uttryck och går igenom villkoren från botten till toppen. Analysen avbryts när ett av villkoren är uppfyllt.IN: OperatörenINkan användas i enWHEREklausul för att undersöka poster. Du kan definiera värden eller strängar medINoch sedan söka efter matchningar i tabeller eller kolumner.EXISTS: SQL:s EXISTS kan användas i en tabell för att kontrollera om minst en post från en annan tabell matchar den första tabellen. Om det finns minst en matchning läggs resultatet till i måltabellen. Denna operator är endast användbar om du arbetar med två relaterade tabeller.

