sql >> Databáze >  >> RDS >> Database

Operátoři SQL

Tento článek poskytuje seznam SQL operátorů, a proto může být použit jako cheat pro SQL operátory.

Ne všechny tyto operátory jsou podporovány ve všech DBMS. Máte-li pochybnosti, podívejte se do dokumentace pro váš konkrétní DBMS.

Aritmetické operátory SQL

Operátor Popis
+ Operátor přidání. Přidá dvě čísla. Tento operátor může také přidat číslo ve dnech od data (může záviset na vaší DBMS).
- Operátor odčítání. Odečte dvě čísla. Tento operátor může také odečíst číslo ve dnech od data (může záviset na vašem DBMS).
* Operátor násobení. Vynásobí dva výrazy.
/ Operátor divize. Dělí jedno číslo druhým.
% Operátor modulu. Vrátí zbytek jednoho čísla dělený druhým.

Bitové operátory SQL

Operátor Popis
& Bitový operátor AND. Provádí bitovou logickou operaci AND mezi dvěma celočíselnými hodnotami.
| Bitový operátor OR. Provádí bitovou logickou operaci OR mezi dvěma zadanými celočíselnými hodnotami přeloženými do binárních výrazů v příkazech SQL.
# Bitový exkluzivní operátor OR (XOR).
^ Bitový exkluzivní operátor OR (XOR). Provede bitovou exkluzivní operaci OR mezi dvěma celočíselnými hodnotami.
~ Bitový operátor NOT. Provede bitovou logickou operaci NOT na celočíselné hodnotě.
<< Operátor bitového posunu vlevo. Posune bity v levém operandu doleva o hodnotu určenou pravým operandem.
>> Bitový operátor Shift Right. Posune bity v levém operandu doprava o hodnotu určenou pravým operandem.

Operátory porovnávání SQL

Operátor Popis
= Operátor se rovná. Porovná rovnost dvou výrazů.
> Operátor větší než. Porovná dva výrazy a vrátí TRUE, pokud má levý operand hodnotu vyšší než pravý operand; jinak je výsledek FALSE.
< Operátor menší než. Porovná dva výrazy a vrátí TRUE, pokud má levý operand hodnotu nižší než pravý operand; jinak je výsledek FALSE.
>= Operátor větší než nebo rovno. Porovná dva výrazy a vrátí TRUE, pokud má levý operand hodnotu větší nebo rovnou pravému operandu; jinak vrátí FALSE.
<= Operátor menší nebo rovno. Porovná dva výrazy a vrátí TRUE, pokud má levý operand hodnotu nižší nebo rovnou pravému operandu; jinak vrátí FALSE.
<> Operátor Nerovná se. Porovná dva výrazy a vrátí hodnotu TRUE, pokud se levý operand nerovná pravému operandu; jinak je výsledek FALSE.
!< Operátor Ne menší než. Porovná dva výrazy a vrátí TRUE, pokud levý operand nemá hodnotu nižší než pravý operand; jinak je výsledek FALSE.
!= Operátor Nerovná se. Porovná dva výrazy a vrátí hodnotu TRUE, pokud se levý operand nerovná pravému operandu; jinak je výsledek FALSE.
!> Ne větší než operátor. Porovná dva výrazy a vrátí TRUE, pokud levý operand nemá větší hodnotu než pravý operand; jinak je výsledek FALSE.

Složené operátory SQL

Operátor Popis
+= Přidat operátor přiřazení. Přidá dvě čísla a nastaví hodnotu výsledku operace.
-= Operátor přiřazení odčítání. Odečte dvě čísla a nastaví hodnotu výsledku operace.
*= Operátor přiřazení násobení. Vynásobí dvě čísla a nastaví hodnotu výsledku operace.
/= Operátor přiřazení divizí. Vydělí jedno číslo druhým a nastaví hodnotu výsledku operace.
%= Operátor přiřazení modulu. Vydělí jedno číslo druhým a nastaví hodnotu výsledku operace.
&= Bitový operátor přiřazení AND. Provede bitovou logickou operaci AND mezi dvěma celočíselnými hodnotami a nastaví hodnotu výsledku operace.
^= Bitově exkluzivní operátor přiřazení OR (XOR). Provede bitovou exkluzivní operaci OR mezi dvěma celočíselnými hodnotami a nastaví hodnotu výsledku operace.
|= Bitový operátor přiřazení OR. Provede bitovou logickou operaci OR mezi dvěma zadanými celočíselnými hodnotami přeloženými do binárních výrazů v příkazech SQL a nastaví hodnotu na výsledek operace.

Logické operátory SQL

Operátor Popis
ALL Vrátí hodnotu TRUE, když všechny hodnoty poddotazu splňují podmínku.
AND Zkombinuje dva booleovské výrazy a vrátí hodnotu TRUE, když jsou oba výrazy TRUE.
ANY Vrátí hodnotu TRUE, když některá z hodnot poddotazu splní podmínku.
BETWEEN Určuje rozsah k testování. Vrátí hodnotu TRUE, když je operand v rozsahu porovnání.
EXISTS Určuje poddotaz, který se má otestovat na existenci řádků. Vrátí hodnotu TRUE, když poddotaz vrátí jeden nebo více záznamů.
IN Určuje, zda zadaná hodnota odpovídá jakékoli hodnotě v poddotazu nebo seznamu. Vrátí TRUE, když je operand roven jednomu ze seznamu výrazů.
LIKE Určuje, zda určitý řetězec znaků odpovídá zadanému vzoru. Vrátí TRUE, když operand odpovídá vzoru.
NOT Neguje booleovský vstup (obrátí hodnotu libovolného booleovského výrazu). Proto vrací TRUE, když je výraz NEPRAVDA. V MariaDB NOT je omezeno na negaci IN , BETWEEN a EXISTS klauzule.
OR Kombinuje dvě podmínky. Vrátí PRAVDA, když je některá z podmínek PRAVDA.
SOME Stejné jako ANY . Vrátí hodnotu TRUE, když některá z hodnot poddotazu splní podmínku.

Operátoři sady SQL

Operátor Popis
EXCEPT Vrátí odlišné řádky porovnáním výsledků dvou dotazů. Vrátí odlišné řádky z levého vstupního dotazu, které nejsou výstupem pravého vstupního dotazu.
INTERSECT Vrátí odlišné řádky porovnáním výsledků dvou dotazů. Vrátí odlišné řádky, které jsou na výstupu levého i pravého operátoru vstupních dotazů.
INTERSECT ALL Vrátí odlišné řádky porovnáním výsledků dvou dotazů. Vrátí odlišné řádky, které jsou na výstupu levého i pravého operátoru vstupních dotazů.
UNION Zřetězí výsledky dvou dotazů do jedné sady výsledků s vyloučením duplicit.
UNION ALL Zřetězí výsledky dvou dotazů do jedné sady výsledků, včetně duplikátů.
MINUS Vrátí odlišné řádky porovnáním výsledků dvou dotazů. Vrátí odlišné řádky z levého vstupního dotazu, které nejsou výstupem pravého vstupního dotazu.

Operátory řetězce SQL

Operátor Popis
+ Operátor zřetězení řetězců (SQL Server). Zřetězení řetězců je operace spojování řetězců znaků end-to-end.
|| Operátor zřetězení řetězců (DB2, Oracle, PostgreSQL, SQLite). Zřetězení řetězců je operace spojování řetězců znaků end-to-end.
+= Operátor přiřazení zřetězení řetězců.
% Procento zástupných znaků pro shodu. Odpovídá libovolnému řetězci nula nebo více znaků. Tento zástupný znak lze použít jako předponu nebo příponu a lze jej použít také uprostřed.
[] Zástupné znaky, které mají odpovídat. Odpovídá libovolnému jednotlivému znaku v zadaném rozsahu nebo sadě, která je uvedena v závorkách [ ] . Tyto zástupné znaky lze použít při porovnávání řetězců, která zahrnují shodu se vzorem, jako je LIKE . Podporováno na serveru SQL Server. Není podporováno v MySQL, Oracle, DB2 a SQLite.
[^] Zástupné znaky není shodovat se. Odpovídá každému jednotlivému znaku, který není v rozsahu nebo množině zadané v hranatých závorkách [^] . Tyto zástupné znaky lze použít při porovnávání řetězců, která zahrnují shodu se vzorem, jako je LIKE .
_ Zástupný znak – odpovídá jednomu znaku. Odpovídá libovolnému jednotlivému znaku v operaci porovnání řetězců, která zahrnuje shodu se vzorem, jako je LIKE . Není podporováno v DB2.

Operátory SQL Unary

Operátor Popis
+ Pozitivní unární operátor. Číselná hodnota je kladná.
- Záporný unární operátor. Číselná hodnota je záporná.
~ Bitový operátor NOT. Vrátí jedničky k číslu.
PRIOR Proprietární operátor Oracle. Vyhodnotí následující výraz pro nadřazený řádek aktuálního řádku v hierarchickém nebo stromově strukturovaném dotazu. V takovém dotazu musíte použít tento operátor v CONNECT BY klauzule k definování vztahu mezi nadřazeným a podřízeným řádkem.

Další SQL operátory

Operátor Popis
(+) Operátor vnějšího spojení (proprietární operátor Oracle). Označuje, že předchozí sloupec je sloupec vnějšího spojení ve spojení.
:: Operátor rozlišení rozsahu. Poskytuje přístup ke statickým členům složeného datového typu. Složený datový typ je takový, který obsahuje více jednoduchých datových typů a metod.

Co jsou to SQL Operators?

Operátory SQL jsou symboly, které určují akci, která se provádí s jedním nebo více výrazy.

Operátoři SQL manipulují s jednotlivými datovými položkami a vracejí výsledek. Datové položky se nazývají operandy nebo argumenty . Operátory SQL jsou reprezentovány speciálními znaky nebo klíčovými slovy.

Zde je jednoduchý příklad:

SELECT PetId FROM Pets
WHERE PetName = 'Fluffy'
AND DOB > '2020-01-01';

V tomto SQL jsou tři operátory SELECT prohlášení.

  • Operátor se rovná (= ) porovnává rovnost dvou výrazů (hodnota PetName sloupec a řetězec Fluffy )
  • Operátor větší než (> ) porovná dva výrazy a vrátí TRUE má-li levý operand hodnotu vyšší než pravý operand; jinak je výsledek FALSE . V tomto případě se porovnává hodnota DOB sloupec a datum 2020-01-01 abyste zjistili, zda je toto datum větší než hodnota DOB sloupec.
  • AND operátor kombinuje dva booleovské výrazy a vrací TRUE když jsou oba výrazy TRUE . V tomto případě vrátí TRUE když PetName = 'Fluffy' a DOB > '2020-01-01' .

Operátory uvedené na této stránce lze použít ke konstrukci složitých SQL dotazů, které vám pomohou vrátit data, která potřebujete.

Další příklady viz 12 běžně používaných operátorů SQL.


  1. Co jsou poddotazy v oracle

  2. Je použití mysql_insert_id bezpečné?

  3. PostgreSQL - maximální počet parametrů v klauzuli IN?

  4. Úloha SSIS pro nekonzistentní import počtu sloupců?