Základní příkazy SQL
Standard jazyka SQL byl přijat v roce 1992 a stále se používá. To byl on, kdo se stal standardem pro mnohé systémy správy databází.
Obsah
- Úvod
- Příkazy sql pro manipulaci s daty
- Select příkaz
- Trochu víc o selectu. používání agregačních funkcí
- Syntaxe příkazu select a pořadí jeho zpracování
- Operátory pro porovnávání dat
- PŘidat
- PŘÍpad
- Operátory definice dat
- Tabulka drop
- Create index
- Alter table
- Create view
- Něco o funkcích
- Další provozovatelé
- Několik tipů pro vývoj platformy pro práci s sql
- Závěr
Úvod
Pomocí příkazů SQL v databázích spravuje hodnoty, tabulky a načítá je pro další analýzu a zobrazení. Jedná se o soubor klíčových slov, pro které systém chápe, co dělat s daty.
Definujte několik kategorií příkazů SQL:
- definice databázových objektů;
- manipulace s hodnotami;
- ochrana a správa;
- parametry relace;
- informace o základně;
- statický SQL;
- dynamické SQL.
Příkazy SQL pro manipulaci s daty
Tato kategorie obsahuje klíčová slova, pomocí kterých můžete spravovat umístění hodnot v databázi.
INSERT. Vloží řádky do existující tabulky. Lze použít pro jednu nebo více hodnot definovaných určitou podmínkou. Například:
VLOŽTE DO
název tabulky (název sloupce 1, název sloupce 2)
HODNOTY (hodnota 1, hodnota 2).
Použít operátora Dotaz SQL INSERT pro několik hodnot, používá se následující syntaxe:
VLOŽTE DO
název tabulky 1 (název sloupce 1, název sloupce 2)
SELECT název sloupce 1, název sloupce 2
FROM název tabulky 2
WHERE název tabulky 2. název sloupce 1> 2
Tento dotaz vybere všechna data z tabulky 2, která je větší než 2 podle sloupce 1 a vloží je do prvního.
UPDATE. Jak název naznačuje, tento operátor dotazu SQL aktualizuje data v existující tabulce pro určitou charakteristiku.
Příklad:
Název tabulky UPDATE 1
Název sloupce SET 2 = "Bazalka"
WHERE název tabulky 1. název sloupce 1 = 1
Tato konstrukce zaplní hodnotu Basila se všemi řádky, ve kterých narazí na číslo 1 v prvním sloupci.
DELETE. Odebere data z tabulky. Můžete určit podmínku nebo odstranit všechny řádky.
DELETE FROM název tabulky
WHERE tabulka name.column name 1 = 1
Výše uvedený dotaz odebere všechna data z databáze s hodnotou jedna v prvním sloupci. A tady můžete vyčistit celou tabulku:
DELETE z názvu tabulky.
Dále je nutné informovat o operátorovi SELECT. Je jedním z nejdůležitějších, takže bude muset věnovat samostatnou kapitolu.
SELECT příkaz
Hlavním účelem programu SELECT je načítání dat za určitých podmínek. Výsledkem jeho práce je vždy nová tabulka s vybranými daty. Operátor MS SQL SELECT mohou být použity v množství různých požadavků. Proto spolu s tím můžete zvážit další související klíčová slova.
Chcete-li vybrat všechna data z určité tabulky, použijte znak "*".
SELECT *
FROM název tabulky 1
Výsledkem tohoto dotazu bude přesná kopie tabulky 1.
A zde je vzorek odebrán podmínkou WHERE, která extrahuje z tabulky 1 všechny hodnoty větší než 2 ve sloupci 1.
SELECT *
FROM název tabulky 1
WHERE název tabulky 1. název sloupce 1> 2
Ve výběru můžete také určit, že jsou potřeba pouze určité sloupce.
Název tabulky SELECT 1. název sloupce 1
FROM název tabulky 1
Výsledkem tohoto dotazu budou všechny řádky s hodnotami sloupci 1. Použití operátorů MS SQL, můžete vytvořit svůj vlastní stůl, v průběhu nahrazování, výpočet a s použitím určité hodnoty.
SELECT
název tabulky 1. název sloupce 1
název tabulky 1. název sloupce 2
název tabulky 1. název sloupce 3
«=» AS EQ
název tabulky 1. název sloupce 2 * název tabulky 1. název sloupce 3 AS SUMMA
FROM název tabulky 1
Tento zdánlivě složitý dotaz načte všechny hodnoty z tabulky 1 a vytvoří nové sloupce EQ a SUMMA. První položka označuje znaménko "+" ve druhém produktu dat ze sloupců 2 a 3. Výsledek může být uveden ve formě tabulky, aby bylo jasné, jak to funguje:
Sloupec 1 | Sloupec 2 | Sloupec 3 | EQ | SUMMA |
Název produktu 1 | 10 | 50 | + | 500 |
Název produktu 2 | 15 | 100 | + | 1500 |
Při použití příkazu SELECT můžete data okamžitě uspořádat na jakýchkoli vlastnostech. Chcete-li to provést, použijte slovo ORDER BY.
SELECT
název tabulky 1. název sloupce 1
název tabulky 1. název sloupce 2
název tabulky 1. název sloupce 3
FROM název tabulky 1
Název sloupce ORDER BY 2
Výsledná tabulka bude vypadat takto:
Sloupec 1 | Sloupec 2 | Sloupec 3 |
1 | 1 | 54 |
3 | 2 | 12. |
7. | 3 | 100 |
2 | 5 | 1 |
To znamená, že všechny řádky byly nastaveny v tomto pořadí, takže ve sloupci 2 hodnoty jsou ve vzestupném pořadí.
Data lze také získat z několika tabulek. Pro přehlednost je třeba nejprve představit, že oni mají dva, některé z nich jsou v databázi:
Tabulka zaměstnanců
Pokoj | Jméno | Příjmení |
1 | Vasya | Vasin |
2 | Petya | Petin |
Tabulka "Plat"
Pokoj | Hodnotit | Poplatky |
1 | 1 | 10000 |
2 | 0,5 | 3500 |
Nyní musíte tyto dvě tabulky nějak spojit, abyste získali společné hodnoty. Pomocí základních příkazů SQL můžete toto provést:
SELECT
Počet zaměstnanců
Zaměstnanci. Jméno
Salary.Stavka
Salary.No
FROM Zaměstnanci, Plat
WHERE Zaměstnanci.Číslo = Plat
Zde je výběr ze dvou různých tabulek hodnot spojených číslem. Výsledkem je následující datový soubor:
Pokoj | Jméno | Hodnotit | Poplatky |
1 | Vasya | 1 | 10000 |
2 | Petya | 0,5 | 3500 |
Trochu víc o SELECTu. Používání agregačních funkcí
Jedna ze základních příkazů SQL SELECT může provést nějaký výpočet ve vzorku. K tomu používá určité funkce a vzorce.
Chcete-li například získat počet položek z tabulky Zaměstnanci, je třeba použít dotaz:
SELECT COUNT (*) AS N
FROM Zaměstnanci
Výsledkem je tabulka s jednou hodnotou a sloupcem.
N |
2 |
V dotazech můžete použít funkce, které vypočítají součet, maximální a minimální hodnoty a střední hodnotu. Za tímto účelem se používají klíčová slova SUM, MAX, MIN, AVG.
Například, je třeba vzorek z již známé tabulky "Plat":
Pokoj | Hodnotit | Poplatky |
1 | 1 | 10000 |
2 | 0,5 | 3500 |
Tento dotaz můžete použít a uvidíte, co se stane:
SELECT
SUM (Salary.Specified) AS SUMMA
MAX (plat.No) AS MAX
MIN (plat.No) AS MIN
AVG (plat.No) AS SRED
Z PLATBY
Konečná tabulka bude následující:
SUMMA | MAX | MIN | SRED |
13500 | 10000 | 3500 | 6750 |
Tímto způsobem můžete vybrat požadované hodnoty z databáze, za běhu, výpočtem různých funkcí.
Sjednocení, křižovatka a rozdíly
Sloučit více dotazů do SQL
SELECT Employees.Name
FROM Zaměstnanci
WHERE Zaměstnanci.číslo = 1
UNION
SELECT Employees.Name
FROM Zaměstnanci, Plat
WHERE Salary.Number = 1
V tomto případě je třeba mít na paměti, že taková kombinace tabulek by měla být kompatibilní. To znamená, mít stejný počet sloupců.
Syntaxe příkazu SELECT a pořadí jeho zpracování
První věc SELECT určuje oblast, ze které budou data přijímána. Pro toto je použito klíčové slovo FROM. Pokud není uvedeno, co přesně zvolíte.
Pak může být klauzule SQL WHERE. Svojí pomocí SELECT prochází všechny řádky tabulky a kontroluje data pro splnění podmínek.
Pokud má dotaz GROUP BY, hodnoty jsou seskupeny podle zadaných parametrů.
Operátory pro porovnávání dat
Existuje několik typů. V SQL, operátoři porovnání mohou testovat různé typy hodnot.
«=». Označuje, jak můžete odhadnout, rovnost dvou výrazů. Například to bylo již použito v příkladech výše - WHERE Salary. Number = 1.
">". Značka je větší. Je-li hodnota levé strany výrazu větší, pak je vrácena logická hodnota TRUE a podmínka je splněna.
««<". Znak je menší. Otočit předchozí příkaz.
Znaky "<= "A"> = ". To se liší od jednodušších operátorů více a méně, tím že když jsou operandy rovny, podmínka bude také pravdivá.
««<> ». Není to stejné. Podmínka bude považována za TRUE pouze v případě, že jeden operand není jiný. Má ještě jednu interpretaci - "! =".
PŘIDAT
Přeložte toto klíčové slovo jako "podobné". Příkaz LIKE v SQL se používá stejným způsobem - provádí dotaz na šablonu. To znamená, že umožňuje rozšířit výběr dat z databáze pomocí regulárních výrazů.
Například byl nastaven následující úkol: z již známé základny "Zaměstnanci", aby se dostali všichni lidé, jejichž jméno končí v "I". Poté lze dotaz zadat následovně:
SELECT *
FROM Zaměstnanci
KDE JMÉNO JAKO "% I"
Procentní znak v tomto případě znamená masku, tj. Jakýkoliv symbol a jeho číslo. A písmenem "I" SQL určí, že poslední znak by měl být přesně takový.
PŘÍPAD
Tento příkaz SQL Server je implementace s možností výběru. To se podobá návrhu spínače v mnoha programovacích jazycích. Příkaz CASE v SQL provádí akci za několika podmínek.
Například je třeba vybrat maximální a minimální hodnoty z tabulky "Plat".
Pokoj | Hodnotit | Poplatky |
1 | 1 | 10000 |
2 | 0,5 | 3500 |
Poté lze dotaz zadat následovně:
SELECT *
Z PLATBY
WHERE PŘÍPAD PŘI VYBRAT MAX (časově rozlišené) NEBO Maximální
PŘI VYBRATU MIN (časově rozlišené) THEN Minimální
END celkem
V tomto kontextu systém vyhledává maximální a minimální hodnotu ve sloupci "časově rozlišené". Poté pomocí tlačítka END se vytvoří pole "celkem", které bude zaznamenáno v závislosti na výsledku podmínky "Maximální" nebo "Minimální".
Mimochodem, v SQL je také kompaktnější podoba CASE - COALESCE.
Operátory definice dat
Tento pohled umožňuje provádět různé změny v tabulkách - vytváření, mazání, úpravy a práce s indexy.
První z nich je CREATE TABLE. Nevystavuje nic jiného než vytvoření tabulky. Pokud zadáte příkaz CREATE TABLE, nic se nestane, protože je třeba zadat několik parametrů.
Chcete-li například vytvořit známou tabulku "Zaměstnanci", použijte následující příkazy:
CREATE TABLE Zaměstnanci
(Číslo čísla (10) NOT NULL
Název varchar (50) NOT NULL
Příjmení varchar (50) NOT NULL)
V tomto dotazu jsou názvy polí a jejich typy okamžitě definovány v závorce a také zda může být NULL.
TABULKA DROP
Provede jeden jednoduchý úkol - smazání zadané tabulky. Má další parametr, JE JE EXISTUJÍ. Absorbuje chybu při její smazání, pokud tabulka neexistuje. Příklad použití:
DROP TABLE Zaměstnanci IF existují.
CREATE INDEX
SQL má indexový systém, který umožňuje zrychlit přístup k datům. Obecně se jedná o odkaz, který odkazuje na konkrétní sloupec. Vytvořit index může být jednoduchý dotaz:
CREATE INDEX index_name
ON název tbl_ (název_sloupce)
Tento operátor je používán v T-SQL, Oracle, PL SQL a mnoha dalších interpretacích technologií.
ALTER TABLE
Velmi funkční operátor s mnoha možnostmi. Obecně dochází ke změně struktury, definice a umístění tabulky. Operátor je používán v systémech Oracle SQL, Postgres a mnoho dalších.
Níže najdete různé možnosti pro použití ALTER TABLE.
ADD. Přidá sloupec do tabulky. Syntaxe je: ALTER TABLE tbl_name ADD name_name name_type_type. Může mít parametr IF NOT EXISTS, který potlačuje chybu, pokud již vytvořený sloupec existuje;
DROP. Odstraní sloupec. Má také klávesu IF EXISTS, bez které se generuje chyba, která indikuje, že požadovaný sloupec chybí;
ZMĚNA. Klepnutím přejmenujte název pole na zadané pole. Příklad použití: ALTER TABLE tbl_name CHANGE old_name new_name;
MODIFY. Tento příkaz pomůže změnit typ a další atributy konkrétního sloupce. A používá se takto: ALTER TABLE tbl_name MODIFY název_sloupce atributy data_type;
CREATE VIEW
V SQL existuje taková věc jako reprezentace. Stručně řečeno, jedná se o druh virtuální tabulky s daty. Vzniká jako výsledek vzorkování pomocí příkazu SQL SELECT. Zobrazení mohou omezit přístup k databázi, skrýt je a nahradit skutečné názvy sloupců.
Proces vytváření se provádí jednoduchým dotazem:
CREATE VIEW zobrazení názvu AS SELECT FROM * název tabulky
Vzorek může nastat jak v celé databázi jako celku, tak i v nějakém stavu.
Něco o funkcích
SQL dotazy často používají různé vestavěné funkce, které umožňují interakci s daty a jejich konverzi za běhu. Je třeba si je uvědomit, protože tvoří nedílnou součást strukturovaného jazyka.
COUNT. Počítá záznamy nebo řádky v konkrétní tabulce. Jako parametr můžete zadat název sloupce a potom budou data odebrána. SELECT COUNT * FROM Zaměstnanci;
AVG. Tato funkce se vztahuje pouze na sloupce s číselnými údaji. Jeho výsledkem je stanovení aritmetického průměru všech hodnot;
MIN a MAX. Tyto funkce již byly použity v tomto článku. Určují maximální a minimální hodnoty ze zadaného sloupce;
SUM. Je to jednoduché - funkce vypočítá součet hodnot sloupců. Používá se pouze pro číselný typ dat. Přidáním výrazu DISTINCT k dotazu budou přidány pouze jedinečné hodnoty;
ROUND. Funkce zaokrouhlení desetinných dílčích čísel. Syntaxe používá název sloupce a počet desetinných míst;
LEN. Jednoduchá funkce, která vypočítá délku hodnot sloupců. Výsledkem je nová tabulka s počtem znaků;
Nyní. Toto klíčové slovo se používá k výpočtu aktuálního data a času.
Další provozovatelé
Mnoho příkladů s příkazy SQL obsahuje klíčová slova, která provádějí malé úkoly, nicméně velmi zjednodušují vzorkování nebo akce s databázemi.
AS. Používá se, když potřebujete vizualizovat výsledek vizuálně, přiřazením zadaného názvu výsledné tabulce.
MEZI. Velmi vhodný nástroj pro odběr vzorků. Označuje rozsah hodnot, mezi kterými chcete data načíst. Vstup přijímá parametr a na které číslo se používá rozsah.
NE. Operátor dává opak výrazu.
TRUNCATE. Odstraní data ze zadané části databáze. Odlišuje se od podobných operátorů v tom, že po jeho použití není možné obnovit data. Je třeba poznamenat, že implementace tohoto klíčového slova v různých interpretacích SQL může být odlišná. Proto před pokusem o použití TRUNCATE je lepší se seznámit s referenčními informacemi.
LIMIT. Nastavuje počet výstupních řádků. Zvláštností operátora je to, že se vždy nachází na konci. Vyžaduje jeden povinný parametr a jeden volitelný parametr. První z nich určuje, kolik řádků s vybranými daty by mělo být zobrazeno. A pokud se použije druhý, operátor se spustí jak pro rozsah hodnot.
UNION. Velmi pohodlný operátor pro kombinování několika dotazů. Již se setkal s příklady tohoto článku. Můžete zobrazovat potřebné řádky z několika tabulek, které kombinují jejich UNION pro pohodlnější použití. Jeho syntaxe je následující: SELECT název_sloupce FROM tbl_name UNION SELECT name_of_column_column Z názvu jiné tabulky. Výsledkem je souhrnná tabulka se sloučenými dotazy.
PRIMÁRNÍ KLÍČ. Převeden jako "primární klíč". Ve skutečnosti je tato terminologie používána v referenčních materiálech. Jedná se o jedinečný identifikátor řetězce. Používá se zpravidla při vytváření tabulky pro zadání pole, které bude obsahovat.
DEFAULT. Stejně jako předchozí příkaz se používá při provádění vytváření dotazu. Určuje výchozí hodnotu, se kterou bude pole při jeho vytváření vyplněno.
Několik tipů pro vývoj platformy pro práci s SQL
NULL. Začátečníci a nejen programátoři často zapomínají na možnost získání hodnoty NULL při vytváření dotazů. V důsledku toho se chyba zavádí do kódu, což je obtížné sledovat během ladění. Při vytváření tabulek, výběru nebo přepočítávání hodnot proto musíte zastavit a přemýšlet a zda je vzata v úvahu výskyt NULL v této části dotazu.
Paměť. Tento článek ukázal několik funkcí, které mohou provádět některé úkoly. Při vývoji prostředí pro práci s databází můžete vyvažovat výpočet jednoduchých výrazů v systému správy databáze. V některých případech to výrazně zvyšuje výkonnost.
Omezení. Pokud potřebujete získat pouze dvě z databáze s tisíci řádky, měli byste použít operátory jako LIMIT nebo TOP. Nemusíte extrahovat data pomocí jazyka vývojového prostředí.
Připojení. Po obdržení dat z několika tabulek začíná mnoho programátorů svádět dohromady pomocí paměti shellů. Ale proč? Koneckonců, můžete udělat jednu žádost, ve které bude vše přítomno. Nemusíte psát další kód a rezervovat další paměť v systému.
Třídění. Je-li v dotazu možné zadat objednávku, to znamená DBMS, pak ji musíte použít. Tím se výrazně ušetří zdroje při spuštění programu nebo služby.
Mnoho požadavků. Pokud budete muset vložit řadu záznamů postupně, pak pro optimalizaci byste měli myslet na vkládání paketových dat jedním dotazem. To také zvýší výkon celého systému.
Pozorné umístění dat. Před sestavením struktury databáze je třeba myslet na to, zda potřebujete tak velký počet tabulek a polí. Možná existuje způsob, jak je kombinovat nebo vzdát. Velmi často programátoři používají nadbytečné množství dat, které se nikde nepoužívají.
Typy. Chcete-li ušetřit místo a zdroje, musíte být citliví na druhy použitých dat. Je-li možné použít méně "těžký" typ paměti, je nutné jej použít. Například, pokud víte, že v tomto poli číselná hodnota nepřesáhne 255, pak proč použijete čtyřbajtovou INT, pokud je TINYINT v 1 bajtu.
Závěr
Závěrem je třeba poznamenat, že jazyk strukturovaných dotazů SQL se nyní používá téměř všude - stránky, webové služby, PC programy, aplikace pro mobilní zařízení. Proto znalost SQL pomůže všem odvětvím vývoje.
Současně se modifikace původního standardu jazyka někdy navzájem liší. Například příkazy PL SQL mohou mít jinou syntaxi než v SQL Server. Proto než začnete s vývojem s touto technologií, stojí za to číst příručky.
V budoucnosti by analogie, které by mohly překonat funkčnost a výkonnost SQL, pravděpodobně nevznikly, takže tato oblast je pro každého programátora velmi slibnou výbavou.
- Databáze je komplexní systém
- Výkaz Select (SQL)
- Coalesce sql: popis, použití, příklady
- Přehled systémů správy databáze
- Jak psát dotazy SQL - podrobné příklady
- Databáze jsou relační. Koncept relační databáze
- Nejužitečnější příkazy SSH
- MySQL vyberte z výběru: operátor vzorkování
- Použití MySQL: vložte do
- MySQL - Příkazy Windows Console
- `Úskalí` příkazů DML Aktualizujte MySQL
- SQL Kde: aplikační metody a příklady
- Příkazy SQL dotazu
- Jak je SQL tříděn?
- Funkce vytvoření tabulky v SQL - Vytvoření tabulky
- Vytvoření tabulky SQL krok za krokem
- Vytváření dotazů v aplikaci Access. Typy požadavků
- Deklarovat SQL: popis. Transact-SQL
- Vymazat příkaz Delete MySQL
- Jak vytvořit databázi mysql
- Excel tabulky - užitečný nástroj pro analýzu dat