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

Kurz SQL:Jednorázové řešení, jak se naučit SQL

Na dnešním trhu, kde se každý den vygeneruje přibližně 2,5 kvintilionů bajtů dat, je velmi důležité pochopit, jak zacházet s tak obrovským množstvím dat. Zde přichází na scénu strukturovaný dotazovací jazyk nebo SQL. Takže v tomto článku o SQL Tutorial budu diskutovat o následujících důležitých konceptech, které jsou nutností na cestě stát se správcem databáze.

  • Úvod do SQL
    1. Co je SQL?
    2. Aplikace SQL
    3. Datové typy SQL
    4. Operátory SQL
  • Nejlepší příkazy SQL
    1. VYTVOŘIT
    2. DROP
    3. ALTER
    4. ZKRÁTIT
    5. VYSVĚTLIT
    6. VLOŽIT DO
    7. AKTUALIZOVAT
    8. VYBRAT
    9. LIKE
    10. GRANT
  • Klíče v databázi
  • Omezení SQL
  • Normalizace
  • Spojení SQL
  • Zobrazení

Výukový program SQL:Úvod do SQL

Co je SQL?

Structured Query Language neboli SQL, vyvinutý Donaldem D.Chamberlinem v 70. letech, je jedním z nejpopulárnějších jazyků používaných k manipulaci, ukládání, aktualizaci a získávání dat z relační databáze. SQL se skládá z různých příkazů rozdělených do 4 kategorií, tj. DDL, DML, DCL a TCL pro hraní s daty v databázích. Také relační databáze jako MySQL Databases, Oracle, MS SQL Server, Sybase atd. používají SQL k úpravě dat.

Aplikace SQL

Aplikace SQL jsou následující:

  • Pomocí SQL můžete vytvářet a rušit tabulky a databáze.
  • Umožňuje uživatelům definovat data v databázích a manipulovat s nimi.
  • SQL umožňuje uživatelům přistupovat, upravovat a popisovat data v RDBMS.
  • Pomocí SQL můžete nastavit oprávnění k tabulkám, pohledům a procedurám a udělit konkrétní oprávnění různým uživatelům.
  • SQL umožňuje vkládání do jiných jazyků pomocí knihoven a modulů SQL.

Nyní, když znáte základy SQL, v dalším výukovém programu SQL nám dejte vědět, jaké jsou různé typy dat SQL.

Datové typy SQL

Datové typy SQL jsou rozděleny do následujících kategorií:

  • Číselné – Číselné datové typy umožňují celá čísla se znaménkem i bez znaménka. Lze je dále rozdělit na přesné a přibližné datové typy, kde přesný umožňuje celá čísla ve formě celých čísel a přibližný umožňuje plovoucí celá čísla.
  • Řetězec znaků – Tento datový typ umožňuje znaky pevné a proměnné délky. Tento datový typ lze také dále kategorizovat do znaků Unicode, které umožňují pevnou a proměnnou délku znaků Unicode.
  • Binární – Binární datové typy umožňují ukládat data ve formátu binárních hodnot s pevnou a proměnnou délkou.
  • Datum a čas – Tento typ dat umožňuje ukládat data v různých formátech data a času.
  • Jiné – Tato část datových typů obsahuje datové typy, jako je tabulka, XML, kurzor, jedinečný identifikátor a sql_variant.

Pokud chcete podrobně porozumět různým datovým typům SQL, můžete se podívat na podrobného průvodce datovými typy SQL.

Operátoři SQL

Operátory jsou konstrukce, které mohou manipulovat s hodnotami operandů. Uvažujme výraz 4 + 6 =10, zde 4 a 6 jsou operandy a + se nazývá operátor.

SQL podporuje následující typy operátorů:

  • Aritmetické operátory
  • Bitové operátory
  • Operátory porovnání
  • Složené operátory
  • Logické operátory

Chcete-li se podrobně seznámit s různými operátory podporovanými SQL, klikněte sem. Takže teď, když víte, co je SQL a jeho základy, dejte nám porozumět hlavním příkazům nebo příkazům v SQL.

Výukový program SQL:Nejlepší příkazy SQL

SQL se skládá z různých příkazů nebo příkazů pro přidání, úpravu, odstranění nebo aktualizaci dat v databázi. V tomto článku o SQL tutoriálu budeme diskutovat o následujících tvrzeních:

    1. VYTVOŘIT
    2. DROP
    3. ALTER
    4. ZKRÁTIT
    5. VYSVĚTLIT
    6. VLOŽIT DO
    7. AKTUALIZOVAT
    8. VYBRAT
    9. LIKE
    10. GRANT

V tomto tutoriálu SQL uvažuji níže uvedenou databázi jako příklad, abych vám ukázal, jak psát dotazy pomocí těchto příkazů SQL.

Číslo zákazníka Jméno zákazníka Telefonní číslo Adresa Město Země
1 Simon 9876543210 Donald Street 52 Hajdarábád Indie
2 Akáš 9955449922 Queens Road 74 Bombaj Indie
3 Patrick 9955888220 Hedvábné prkno 82 Dillí Indie
4 Stejně 9647974327 IG Road 19 Hajdarábád Indie
5 Jan 9674325689 Brigádní silniční blok 9 Bangalore Indie

VYTVOŘIT

Příkaz CREATE se používá k vytvoření tabulky, pohledu nebo databáze následujícím způsobem:

VYTVOŘIT DATABÁZI

Slouží k vytvoření databáze.

Syntaxe

CREATE DATABASE DatabaseName;

Příklad

 
CREATE DATABASE CustomerInfo; 

VYTVOŘIT TABULKU

Tento příkaz se používá k vytvoření tabulky.

Syntaxe

CREATE TABLE TableName (
Column1 data type,
Column2 data type,
....

ColumnN data type
);

Příklad

 
CREATE TABLE Customers
(
CustomerID int,
CustomerName varchar(255),
PhoneNumber int,
Address varchar(255),
City varchar(255),
Country varchar(255)
);

VYTVOŘIT ZOBRAZENÍ

Slouží k vytvoření pohledu.

Syntaxe

CREATE VIEW OR REPLACE ViewName AS
SELECT Column1, Column2, ..., ColumnN
FROM TableName
WHERE Condition;

Příklad

CREATE VIEW OR REPLACE HydCustomers AS
SELECT CustomerName, PhoneNumber
FROM Customers
WHERE City = "Hyderabad";

Poznámka: Než začnete vytvářet tabulku a zadávat hodnoty, musíte použít databázi pomocí příkazu USE jako [USE CustomersInfo; ]

DROP

Příkaz DROP se používá k odstranění existující tabulky, pohledu nebo databáze.

DROP DATABASE

Slouží k odstranění databáze. Když použijete toto prohlášení, budou ztraceny kompletní informace v databázi.

Syntaxe

DROP DATABASE DatabaseName;

Příklad

DROP DATABASE CustomerInfo;

PUSTIT TABULKU

Slouží k vypuštění tabulky. Když použijete toto prohlášení, budou ztraceny úplné informace uvedené v tabulce.

Syntaxe

DROP TABLE TableName;

Příklad

DROP TABLE Customers;

ZOBRAZENÍ POHLEDEM

Slouží k odstranění zobrazení. Když použijete toto prohlášení, budou ztraceny úplné informace v zobrazení.

Syntaxe

DROP VIEW ViewName;

Příklad

DROP VIEW HydCustomers;

ALTER

Příkaz ALTER se používá k přidání, odstranění nebo úpravě omezení nebo sloupců v existující tabulce.

ALTER TABLE

Příkaz ALTER se používá k odstranění, přidání a úpravě sloupců v existující tabulce. Můžete použít ALTER TABLE se sloupcem ADD/DROP k přidání nebo odstranění sloupce v tabulce. Kromě toho můžete také ALTER/MODIFY konkrétní sloupec.

Syntaxe

ALTER TABLE TableName
ADD ColumnName Data Type;
ALTER TABLE TableName
DROP COLUMN ColumnName;

ALTER TABLE TableName
ALTER COLUMN ColumnName Data Type;

Příklad

--ADD Column Gender:
 ALTER TABLE Customers
ADD  Gender varchar(255);
 
--DROP Column Gender: 
ALTER TABLE Customers
DROP COLUMN Gender ;

--Add a column DOB and change the data type from Date to Year.
 
ALTER TABLE DOB
ADD DOB date;
 
ALTER TABLE DOB
ALTER DOB year;

ZKRÁTIT

Příkaz TRUNCATE se používá k odstranění informací přítomných v tabulce, nikoli však tabulky samotné. Jakmile tedy použijete tento příkaz, vaše informace budou ztraceny, ale tabulka nebude stále přítomna v databázi.

Syntaxe

TRUNCATE TABLE TableName;

Příklad

TRUNCATE Table Customers;

EXPLAIN

Příkazy EXPLAIN a DESCRIBE jsou synonyma používaná k získání plánu provádění dotazu a informací o struktuře tabulky. Tento příkaz lze použít s příkazy INSERT, DELETE, SELECT, UPDATE a REPLACE.

Syntaxe

--Syntax for DESCRIBE
DESCRIBE TableName;

--Sample syntax for EXPLAIN
EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);

Příklad

DESCRIBE Customers;

EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);

INSERT INTO

Příkaz INSERT INTO se používá k vložení nových záznamů do tabulky.

Syntaxe

INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN)
VALUES (value1, value2, value3, ...);

--If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types :

INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);

Příklad

INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country)
VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India');
 
INSERT INTO Customers
VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');

AKTUALIZACE

Příkaz UPDATE se používá k úpravě záznamů, které se již v tabulce nacházejí.

Syntaxe

UPDATE TableName
SET Column1 = Value1, Column2 = Value2, ...
WHERE Condition;

Příklad

UPDATE Customers
SET CustomerName = 'Aisha', City= 'Kolkata'
WHERE EmployeeID = 2;

VYBRAT

Příkaz SELECT se používá k výběru dat z databáze a jejich uložení do výsledkové tabulky zvané sada výsledků .

Syntaxe

SELECT Column1, Column2, ...ColumN
FROM TableName;

--(*) is used to select all from the table
SELECT * FROM table_name;

-- To select the number of records to return use:
SELECT TOP 3 * FROM TableName;

Příklad

SELECT CustomerID, CustomerName
FROM Customers;
 
--(*) is used to select all from the table
SELECT * FROM Customers;
 
-- To select the number of records to return use:
SELECT TOP 3 * FROM Customers;

Kromě toho můžete použít klíčové slovo SELECT s klauzulemi DISTINCT, ORDER BY, GROUP BY, HAVING a INTO.

LIKE

Tento operátor se používá s klauzulí WHERE k vyhledání zadaného vzoru ve sloupci tabulky. Ve spojení s operátorem LIKE se používají hlavně dva zástupné znaky:

  • % – Odpovídá 0 nebo více znakům.
  • _ – Odpovídá přesně jednomu znaku.

Syntaxe

SELECT ColumnName(s)
FROM TableName
WHERE ColumnName LIKE pattern;

Příklad

SELECT * FROM Customers
WHERE CustomerName LIKE 'S%';

GRANT

Příkaz GRANT se používá k poskytnutí oprávnění nebo přístupu k databázi a jejím objektům uživatelům.

Syntaxe

GRANT PrivilegeName
ON ObjectName
TO {UserName |PUBLIC |RoleName}
[WITH GRANT OPTION];

kde,

  • PrivilegeName – Oprávnění/práva/přístup udělená uživateli.
  • Název objektu – Název databázového objektu jako TABLE/VIEW/STORED PROC.
  • Uživatelské jméno – Jméno uživatele, kterému jsou uděleny přístupy/práva/privilegia.
  • VEŘEJNÉ – Udělit přístupová práva všem uživatelům.
  • Název role – Název sady oprávnění seskupených dohromady.
  • S MOŽNOSTÍ GRANTU – Udělit uživateli přístup k udělení práv dalším uživatelům.

Příklad

-- To grant SELECT permission to Customers table to admin
GRANT SELECT ON Customers TO admin;

Nyní, když znáte hlavní příkazy SQL, dejte nám vědět, jaké jsou různé typy klíčů používaných v databázi. Tento koncept vám pomůže pochopit, jak každá tabulka souvisí s druhou tabulkou v systému správy relačních databází.

Výukový program SQL:Klíče

Následujících 7 typů klíčů, které lze uvažovat v databázi:

  • Klíč kandidáta – Soubor atributů, které mohou jednoznačně identifikovat tabulku, lze nazvat jako kandidátský klíč. Tabulka může mít více než jeden kandidátský klíč a z vybraných kandidátských klíčů může být jeden klíč vybrán jako primární klíč.
  • Super klíč – Sada atributů, které mohou jednoznačně identifikovat n-tici, se nazývá Super klíč. Kandidátský klíč, primární klíč a jedinečný klíč je tedy superklíč, ale naopak to není pravda.
  • Primární klíč – Sada atributů, které se používají k jedinečné identifikaci každé n-tice, je také primárním klíčem.
  • Alternativní klíč – Alternativní klíče jsou kandidátské klíče, které nejsou vybrány jako primární klíč.
  • Jedinečný klíč – Jedinečný klíč je podobný primárnímu klíči, ale umožňuje ve sloupci jednu hodnotu NULL.
  • Zahraniční klíč – Atribut, který může pouze převzít přítomné hodnoty jako hodnoty nějakého jiného atributu, je cizí klíč k atributu, na který odkazuje.
  • Složený klíč – Složený klíč je kombinací dvou nebo více sloupců, které jedinečně identifikují každou n-tici.

Doufám, že jste pochopili různé typy klíčů v databázi. Dále v tomto článku o SQL tutoriálu probereme omezení v databázi. Omezení SQL se používají ke zvýšení přesnosti a spolehlivosti dat, která jdou do databáze prostřednictvím tabulky.

Výukový program SQL: Omezení

Omezení SQL zajistí, že nedojde k žádnému porušení z hlediska transakce dat, pokud budou nalezena, akce bude ukončena. Hlavním použitím následujících omezení je omezení typu dat, která mohou být v tabulce.

  • NENÍ NULL – Toto omezení se používá k zajištění toho, že sloupec nemůže uložit hodnotu NULL.
  • JEDINEČNÉ – Omezení UNIQUE se používá k zajištění toho, aby všechny hodnoty zadané do sloupce nebo tabulky byly jedinečné.
  • ZKONTROLUJTE – Toto omezení se používá k zajištění toho, aby sloupec nebo více sloupců vyhovovalo určité podmínce.
  • VÝCHOZÍ – Omezení DEFAULT se používá k nastavení výchozí hodnoty pro sloupec, pokud není zadána žádná hodnota.
  • INDEX – Toto omezení se používá pro indexy v tabulce, pomocí kterých můžete velmi rychle vytvářet a načítat data z databáze.

Pokud se chcete dozvědět o následujících omezeních podrobně se syntaxí a příklady, můžete se podívat na další články o SQL. Takže, když jste teď o klíčích a omezeních v databázi, v dalším článku o SQL tutoriálu se podíváme na zajímavý koncept Normalizace.

Výukový program SQL:Normalizace

Normalizace je proces organizace dat, aby se zabránilo duplicitě a redundanci. Existuje mnoho po sobě jdoucích úrovní normalizace a ty se nazývají normální formy . Také každá následná normální forma závisí na předchozí. Následují běžné formy:

Abyste porozuměli výše uvedeným normálním formám, zvažte následující tabulku:

Podle výše uvedené tabulky můžete jasně rozeznat redundanci dat a duplicitu dat. Pojďme tedy tuto tabulku normalizovat. Chcete-li začít s normalizací databází, měli byste vždy začít s nejnižší normální formou, tj. 1NF, a poté případně přejít k vyšším normálním formám.

Nyní se podívejme, jak můžeme provést první normální formu pro výše uvedenou tabulku.

První normální formulář (1NF)

Ujistěte se, že databáze musí být v 1NF , každá buňka tabulky by měla mít jednu hodnotu. Takže v podstatě všechny záznamy musí být jedinečné . Výše uvedená tabulka bude normalizována na 1NF, jak je uvedeno níže:

Pokud si všimnete v tabulce výše, všechny záznamy jsou jedinečné. Existuje však mnoho redundance a duplikace dat. Abychom tomu zabránili, normalizujme databázi do druhé normální formy.

Druhá normální forma (2NF)

Abyste se ujistili, že databáze musí být v 2NF , databáze by měla být 1NF a měl by takémít primární klíč s jedním sloupcem . Výše uvedená tabulka bude normalizována na 2NF, jak je uvedeno níže:

Pokud dodržíte výše uvedené tabulky, má každá tabulka primární klíč s jedním sloupcem. Existuje však velká redundance dat a duplikace několika sloupců. Abychom tomu zabránili, normalizujme databázi do třetí normální formy.

Třetí normální forma (3NF)

Abyste se ujistili, že databáze musí být v 3NF , databáze by měla být v 2NF a nesmí mít žádné přechodné funkční závislosti . Výše uvedené tabulky budou normalizovány do 3NF, jak je uvedeno níže:

Pokud dodržíte výše uvedené tabulky, databáze nemá žádnou tranzitivní závislost. Po tomto kroku tedy nemusíme naši databázi dále normalizovat. Pokud však uvidíte nějaké anomálie nebo více než jeden kandidátský klíč, můžete pokračovat s další vyšší normální formou, tj. BCNF.

Normální forma Boyce-Codda (BCNF)

Aby bylo zajištěno, že databáze musí být v BCNF, musí být databáze přítomna v 3NF a tabulky musí být dále rozděleny, aby byl přítomen pouze jeden kandidátský klíč.

Tímto se dostáváme ke konci normalizace. Nyní, dále v tomto SQL tutoriálu, pojďme diskutovat o důležitém konceptu v SQL, kterým je spojení.

Výukový program SQL:Připojení

Spojení se používají ke spojení řádků ze dvou nebo více tabulek na základě souvisejícího sloupce mezi těmito tabulkami a také na základě několika podmínek. Existují hlavně čtyři typy spojení:

  • INNER JOIN: Toto spojení vrátí ty záznamy, které mají odpovídající hodnoty v obou tabulkách.
  • PLNÉ PŘIPOJENÍ: FULL JOIN vrátí všechny záznamy, které mají shodu v levé nebo pravé tabulce.
  • LEVÉ PŘIPOJENÍ: Toto spojení vrátí záznamy z levé tabulky a také ty záznamy, které splňují podmínku z pravé tabulky.
  • SPRÁVNÉ PŘIPOJENÍ: Toto spojení vrátí záznamy z pravé tabulky a také ty záznamy, které splňují podmínku z levé tabulky.

Toto byl krátký popis na JOINS, ale pokud chcete podrobný popis na JOINS s podrobným příkladem, můžete se podívat na můj článek o SQL JOINS. Dále v tomto SQL tutoriálu probereme poslední koncept tohoto článku, tj. Views.

Výukový program SQL:Zobrazení

Pohled v SQL je jedna tabulka, která je odvozena z jiných tabulek. Pohled obsahuje řádky a sloupce podobné skutečné tabulce a obsahuje pole z jedné nebo více tabulek. Viz obrázek níže:

Chcete-li porozumět tomu, jak vytvořit a zrušit zobrazení, můžete se podívat na příkazy CREATE a DROP uvedené výše. Tím se dostáváme ke konci tohoto článku o SQL tutoriálu. Doufám, že jste našli tento článek informativní. Pokud se také připravujete na pohovory s administrátory databáze a hledáte úplný seznam otázek, můžete se podívat na náš článek Otázky k pohovoru SQL.

Pokud se chcete dozvědět více o MySQL a poznat tuto relační databázi s otevřeným zdrojovým kódem, podívejte se na naše certifikační školení MySQL DBA, které je součástí živého školení pod vedením instruktora a skutečného - životní zkušenosti s projektem. Toto školení vám pomůže porozumět MySQL do hloubky a pomůže vám dosáhnout zvládnutí tohoto předmětu.

Máte na nás otázku? Uveďte to prosím v sekci komentářů tohoto SQLTutorial a my se vám ozveme.


  1. existuje funkce PRODUCT, jako je funkce SUM v Oracle SQL?

  2. Jak FOR XML PATH('') funguje při zřetězení řádků

  3. Časové razítko s přesností na milisekundy:Jak je uložit v MySQL

  4. Dotaz s LEFT JOIN nevrací řádky pro počet 0