Užitečné a běžné příklady dotazů MySQL s odpověďmi pro vývojáře a DBA
Jak vytvořit databázi MySQL
mysql> create database techdb;
mysql> use techdb;

Jak vytvořit tabulku v databázi mysql?
Zde je příklad vytvoření tabulky v databázi MySQL
(1) Nejprve se musíme dostat do databáze
use techdb;
(2) Vytvořte tabulku pomocí níže uvedené syntaxe
CREATE TABLE test ( test_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, test_desp varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_updated datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (test_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Vysvětlení různých podrobností v syntě vytváření tabulky x
test -> Název tabulky
test_id,test_description -> Sloupec tabulky
bigint(20,varchar -> Datový typ pro sloupec
Není null-> sloupec nemůže být null
utf8mb4_unicode_ci -> Collation
AUTO_INCREMENT -> Hodnoty se automaticky zvýší na insert
Engine -> Specifikujte engine pro tabulku
Jak zobrazit strukturu tabulky po vytvoření
Po úspěšném vytvoření tabulky lze strukturu tabulky zobrazit pomocí
Desc test

Jak získat příkaz k vytvoření tabulky pro tabulku v MySQL?
lze to zjistit pomocí příkazu
mysql> show create table <table name>

Jak provést níže uvedenou běžnou operaci DML na stole?
(a) Vložte prohlášení
insert into test (test_desctiption,test_name,test_updated) values ('this is mysql test','mysql-test-1',current_date);
Zde jsme nespecifikovali test_id, protože se jedná o automatické zvýšení a bude mít hodnotu, když se do tabulky vloží řádky
(b) Vyberte příkaz
select * from test where test_id=1;
(c) Vymazat výpis
delete from test where test_id=1;

Jak deaktivovat automatické potvrzení pro relaci?
SET autocommit=0;
Jak změnit nebo zrušit tabulku v MySQL?
Změnit tabulku
alter table test add (test_description varchar(255) not null default '');
Zrušit tabulku
drop table test2;

Jak vytvořit tabulku z jiné tabulky v MySQL?
create table test4 select * from test3;

Jak vytvořit index a umístit index na tabulku v MySQL?
(a) vytvořit index
create index test3_idx on test3(table_name);
(b) zobrazit index
show index from test3;
(c) index poklesu
drop index test3_idx on test3

Jak získat plán provádění pro dotaz mysql?
explain <query>

Jak vybrat data z více tabulek pomocí spojení v Mysql?
Mysql podporuje vnitřní spojení, levé spojení a pravé spojení pro načítání dat z více tabulek současně
Vnitřní spojení
select test_name,student_name,test_marks from test,student_test where test.test_id=student_test.test_id; or select test_name,student_name,test_marks from test join student_test on test.test_id=student_test.test_id
Připojení vlevo
select test_name,student_name,test_marks from test left join student_test on test.test_id=student_test.test_id;
Správné připojení
select test_name,student_name,test_marks from test right join student_test on test.test_id=student_test.test_id;

Automatický přírůstek sloupce v databázi MySQL
Můžeme mít atribut automatického přírůstku pro sloupec v Mysql
CREATE TABLE test ( test_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, test_desp varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_updated datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (test_id) )
Doufám, že se vám tyto příklady dotazů MySQL s odpověďmi líbí
Související články
Podrobný průvodce instalací MySQL na Windows
Sloupce automatického přírůstku – sekvence jako výchozí hodnota v Oracle a mysql
51 nejčastějších otázek a odpovědí v rozhovorech s MySQL
Příručka krok za krokem k vytvoření místní vývojové prostředí Apache PHP MySQL v systému Windows
Jak obnovit heslo root MySQL