Tento tutoriál je součástí série Naučte se základní SQL dotazy pomocí MySQL. V tomto tutoriálu probereme SQL dotazy pro načítání řádků nebo čtení dat z tabulky v MySQL.
Vyberte dotaz
Příkaz SELECT lze použít ke čtení řádků z tabulky. V případě, že jste vzdáleně přihlášeni do databáze, budete také potřebovat oprávnění SELECT pro tabulku, abyste mohli číst řádky z tabulky.
# SELECT - Syntax
SELECT [ ALL | DISTINCT | DISTINCTROW ] <select expression> FROM table_name;
# SELECT - Syntax - All Columns
SELECT [ ALL | DISTINCT | DISTINCTROW ] * FROM table_name;
# SELECT - Syntax - Selective Columns
SELECT [ ALL | DISTINCT | DISTINCTROW ] column_1,column_2,... FROM table_name;
# SELECT - Syntax - Filter results using WHERE
SELECT [ ALL | DISTINCT | DISTINCTROW ] column_1,column_2,... FROM table_name WHERE <single or multiple filter conditions>;
Vysvětlení dotazu
Příkaz MySQL SELECT lze použít ke čtení řádků nebo dat z daného názvu tabulky, kde je povinný výraz select a název tabulky.
Použití klíčových slov ALL nebo DISTINCT nebo DISTINCTROW je volitelné. ALL je výchozí klíčové slovo v případě, že žádné z nich není zadáno.
Musíme také zadat výraz pro výběr abyste získali data z dané tabulky. Můžeme použít buď * nebo názvy sloupců oddělených čárkami získat výsledky dotazu z tabulky. Můžeme také určit alias pro názvy sloupců pomocí klíčového slova AS .
Další výukové programy této série vysvětlují pokročilé použití výběrového dotazu k filtrování, řazení nebo seskupování výsledků pomocí KDE , LIKE , OBJEDNAT PODLE a GROUP BY klauzule.
Příklady
Tato část obsahuje příklady čtení dat z tabulky pomocí příkazu SELECT. Pomocí níže uvedeného dotazu vytvořte uživatelskou tabulku se sloupci id, jméno a příjmení pro uložení uživatelských dat.
# Create the User Table
CREATE TABLE `user` (
`user_id` bigint(20) NOT NULL,
`first_name` varchar(45),
`last_name` varchar(45)
);
K vložení dat do uživatelské tabulky lze použít níže uvedený dotaz.
# Insert Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`) VALUES
( 1, 'John', 'Smith' ),
( 2, 'Rick', 'Jones' ),
( 3, 'Catherine', 'Ponting' ),
( 4, 'Harsh', 'Upadhyay' ),
( 5, 'Tajwinder', 'Singh' );
Výše zmíněný dotaz vloží do tabulky 5 řádků s id, křestním jménem a příjmením, které představují 5 různých uživatelů.
Nyní načteme námi vložená data v uživatelské tabulce. To lze provést pomocí příkazu SELECT, jak je ukázáno níže.
# Read all the columns and rows
SELECT * FROM `user`;
# Result
1 John Smith
2 Rick Jones
3 Catherine Ponting
4 Harsh Upadhyay
5 Tajwinder Singh
# Read selective columns
SELECT `first_name`, `last_name` FROM `user`;
# Result
John Smith
Rick Jones
Catherine Ponting
Harsh Upadhyay
Tajwinder Singh
První dotaz zobrazí všechny sloupce ve výsledcích dotazu, zatímco druhý dotaz zobrazí pouze data řádků pro námi poskytnuté sloupce.
V případě, že je počet řádků tabulky větší než 50 nebo 100, je lepší číst omezená data buď pomocí LIMIT nebo OFFSET.
# Read limited rows
SELECT * FROM `user` LIMIT 2;
# Result
1 John Smith
2 Rick Jones
# Read limited rows using offset
SELECT * FROM `user` LIMIT 3, 2;
# Result
4 Harsh Upadhyay
5 Tajwinder Singh
Klíčové slovo LIMIT můžeme použít k načtení omezených řádků zadáním hodnot offsetu a limitu. Ve výše uvedeném příkladu bude první dotaz číst první dva řádky. Druhý dotaz také přečte 2 řádky počínaje 4. řádkem zadáním hodnoty offsetu na 3.
Takto můžeme číst data uložená v tabulkách MySQL.