SQL Select utasítások: Példák a Select Distinct, a Select Into, a Insert be és egyebekre

Select és From záradékok

A lekérdezés SELECT része általában annak meghatározása, hogy az adatok mely oszlopait jelenítsék meg az eredményekben. Vannak olyan lehetőségek is, amelyeket alkalmazni lehet olyan adatok megjelenítésére, amelyek nem táblázatos oszlopok.

Ez a példa három oszlopot mutat be a „diák” táblázatból és egy számított oszlopot. Az adatbázis tárolja a hallgató azonosítóját, utónevét és vezetéknevét. Kombinálhatjuk a Vezeték és a Vezeték oszlopokat a Teljes név számított oszlop létrehozásához.

select studentID, FirstName, LastName, FirstName + ' ' + LastName as FullName from student;
+-----------+-------------------+------------+------------------------+ | studentID | FirstName | LastName | FullName | +-----------+-------------------+------------+------------------------+ | 1 | Monique | Davis | Monique Davis | | 2 | Teri | Gutierrez | Teri Gutierrez | | 3 | Spencer | Pautier | Spencer Pautier | | 4 | Louis | Ramsey | Louis Ramsey | | 5 | Alvin | Greene | Alvin Greene | | 6 | Sophie | Freeman | Sophie Freeman | | 7 | Edgar Frank "Ted" | Codd | Edgar Frank "Ted" Codd | | 8 | Donald D. | Chamberlin | Donald D. Chamberlin | | 9 | Raymond F. | Boyce | Raymond F. Boyce | +-----------+-------------------+------------+------------------------+ 9 rows in set (0.00 sec)

* Mint mindezen SQL dolgok esetében, SOKKAL TÖBB számuk is van bennük, mint ami ebben a bevezető útmutatóban található.

Remélem, hogy ez legalább annyit ad a kezdéshez.

Kérjük, olvassa el az adatbázis-kezelő kézikönyvét, és jó szórakozást próbáljon ki magának a különböző lehetőségekkel.

SQL Válassza ki a Megkülönböztető állítást

Bevezetés

Ez a kulcsszó lehetővé teszi számunkra, hogy egy egyedi értékek listáját kapjuk meg egy oszlopban. Ez az útmutató ezt bizonyítja.

Az adatok teljes megjelenítése a hallgatói táblázatban

USE fcc_sql_guides_database; SELECT studentID, FullName, sat_score, programOfStudy, rcd_Created, rcd_Updated FROM student;
+-----------+------------------------+-----------+------------------+---------------------+---------------------+ | studentID | FullName | sat_score | programOfStudy | rcd_Created | rcd_Updated | +-----------+------------------------+-----------+------------------+---------------------+---------------------+ | 1 | Monique Davis | 400 | Literature | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 2 | Teri Gutierrez | 800 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 3 | Spencer Pautier | 1000 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 4 | Louis Ramsey | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 5 | Alvin Greene | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 6 | Sophie Freeman | 1200 | Programming | 2017-08-16 15:34:50 | 2017-08-16 15:34:50 | | 7 | Edgar Frank "Ted" Codd | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | | 8 | Donald D. Chamberlin | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | | 9 | Raymond F. Boyce | 2400 | Computer Science | 2017-08-16 15:35:33 | 2017-08-16 15:35:33 | +-----------+------------------------+-----------+------------------+---------------------+---------------------+ 9 rows in set (0.00 sec)

A tanulmányi területek felsorolása

SELECT DISTINCT programOfStudy FROM student;
+------------------+ | programOfStudy | +------------------+ | Literature | | Programming | | Computer Science | +------------------+ 3 rows in set (0.00 sec)

Mint mindezen SQL dolgok esetében, SOKKAL TÖBBEN számolnak velük, mint ami ebben a bevezető útmutatóban található.

Remélem, hogy ez legalább annyit ad a kezdéshez.

Kérjük, olvassa el az adatbázis-kezelő kézikönyvét, és jó szórakozást próbáljon ki magának a különböző lehetőségekkel.

SQL Select into Statement

Az SELECT INTOutasítás egy olyan lekérdezés, amely lehetővé teszi új tábla létrehozását és feltöltését az a eredményhalmazával SELECT statement. Adatok hozzáadásához egy meglévő táblához lásd az INSERT INTO utasítást.

SELECT INTO akkor használható, ha több táblázatból vagy nézetből származó adatokat kombinál egy új táblába.1 Az eredeti táblázatot ez nem érinti.

Az általános szintaxis:

SELECT column-names INTO new-table-name FROM table-name WHERE EXISTS (SELECT column-name FROM table-name WHERE condition)

Ez a példa egy olyan tábla készletét mutatja, amelyet a „Szállító” táblából „átmásoltak” egy új, a SzállítóUSA nevű táblába, amely az „USA” oszlopértékű országhoz tartozó halmazt tartalmazza.

SELECT * INTO SupplierUSA FROM Supplier WHERE Country = 'USA';

Eredmények : 4 sor érintett 2

IDCompanyNameContactNameCityCountryPhone2New Orleans Cajun DelightsShelley BurkeNew OrleansUSA (100) 555-48223Grandma Kelly's HomesteadRegina MurphyAnn ArborUSA (313) 555-573516Bigfoot BreweriesCuleryRanneryCaneryRanneryCaneryRanneryCaneryNew Orleans Cannun Delights

Kérjük, olvassa el az adatbázis-kezelő kézikönyvét, és jó szórakozást próbáljon ki magának a különböző lehetőségekkel.

SQL beszúrás az utasításba

Rekord beillesztéséhez egy táblázatba használja az INSERT INTOutasítást.

Kétféleképpen teheti meg, ha csak néhány oszlopba szeretne beszúrni értékeket, akkor fel kell sorolnia a nevüket, beleértve az összes kötelező oszlopot. A szintaxis a következő:

INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);

A másik módszer az értékek beillesztése a táblázat összes oszlopába, nem szükséges megadni az oszlopok nevét. A szintaxis a következő:

INSERT INTO table_name VALUES (value1, value2, value3, ...);

Íme egy példa egy rekord beillesztésére a Személy táblázatba mindkét módon:

INSERT INTO Person VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’);

És

INSERT INTO Person(Id, Name, DateOfBirth, Gender) VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’);

Néhány SQL verzió (például MySQL) támogatja a több sor beszúrását egyszerre. Például:

INSERT INTO Person(Id, Name, DateOfBirth, Gender) VALUES (1, ‘John Lennon’, ‘1940-10-09’, ‘M’), (2, ‘Paul McCartney’, ‘1942-06-18’, ‘M’), (3, ‘George Harrison’, ‘1943-02-25’, ‘M’), (4, ‘Ringo Starr’, ‘1940-07-07’, ‘M’)

Vegye figyelembe, hogy a teljes eredeti lekérdezés sértetlen marad - egyszerűen hozzáadjuk a paranhézissal bevont és vesszővel elválasztott adatsorokat.

SQL beszúrás a Select Statementbe

Rekordokat beilleszthet egy táblázatba az adatbázisban már tárolt adatok felhasználásával. Ez csak az adatok másolata, és nem befolyásolja a származási táblázatot.

A INSERT INTO SELECTnyilatkozat egyesíti INSERT INTOés SELECTnyilatkozatok és segítségével bármilyen kívánt feltételt. A szintaxis a következő:

INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition;

Itt van egy példa, amely beszúrja a táblázatot Személyre szabja az összes diákot a diákokból.

INSERT INTO Person(Id, Name, DateOfBirth, Gender) SELECT Id, Name, DateOfBirth, Gender FROM Students WHERE Gender = ‘M’

Other SQL resources:

  • SQL and Databases full video course
  • Basic SQL commands you should know