SQL語法紀錄
前言
一直以來只記得 select insert drop…
每次要用都忘記..還是來記錄一下!
基礎語法
操作功能 | SQL 語法 | 說明 |
---|---|---|
建立資料庫 | create database 資料庫名稱; |
|
列出所有資料庫 | show databases; |
|
刪除資料庫 | drop database 資料庫名稱; |
|
使用資料庫 | use 資料庫名稱; |
|
建立資料表 | create table 資料表名稱(<br>sn integer auto_increment primary key,<br>name char(20),<br>mail char(50),<br>home char(50),<br>messages char(50)); |
常用資料庫資料型態 1. INT (整數) 2. CHAR (1~255字元字串) 3. VARCHAR (不超過255字元不定長度字串) 4. TEXT (不定長度字串最多65535字元) |
列出資料表欄位資訊 | describe 資料表名稱; |
|
修改資料表欄位 | alter table 資料表名稱<br>change column 原來欄位名稱<br>新欄位名稱資料型態; |
|
新增資料表欄位 | alter table 資料表名稱 add <br>column 欄位名稱 資料型態; |
|
刪除資料表欄位 | alter table 資料表名稱 drop column 欄位名稱; |
|
刪除資料表 | drop table 資料表名稱; |
|
清空資料表 | truncate table 資料表名稱; |
只清除資料並保留結構、欄位、索引 … |
插入欄位資料 | insert into 資料表名稱(欄位1,欄位2,欄位3,欄位4, ...... 欄位N)<br>values('值1','值2','值3','值4', ...... '值N'); |
|
更新修改欄位資料 | update 資料表名稱 set 欄位1='值1',欄位2='值2',欄位3='值3',... <br>欄位N='值N'where 條件式 (例如 sn='5' 或 name='塔司尼' ); |
|
查詢單一欄位資料 | select 欄位名 from 資料表名稱; |
|
查詢多個欄位資料 | select 欄位名, 欄位名, 欄位名 from 資料表名稱; |
|
查詢欄位資料的唯一值 | select distinct 欄位名 from 資料表名稱; |
重複值只列一次 |
查詢所有欄位資料 | select * from 資料表名稱; |
|
條件式查詢 | select * from 資料表名稱 where 條件式 (例如 sn='5'); |
(=, <, >, !=) |
條件式查詢 and | select * from 資料表名稱 where 條件式1 and 條件式2; |
|
條件式查詢 or | select * from 資料表名稱 where 條件式1 or 條件式2; |
|
查詢某一範圍 between | select * from 資料表名稱 where 欄位名 between 值1 and 值2; |
值為數字 |
查詢空值欄位的資料 | select * from 資料表名稱 where 欄位名 is null |
not null; |
查詢特定筆數資料 | select * from 資料表名稱 limit 8, 10; |
第9筆開始選取10筆 |
查詢結果遞增排序 | select * from 資料表名稱 order by 欄位名; |
|
查詢結果遞減排序 | select * from 資料表名稱 order by 欄位名 desc ; |
|
查詢比對字串列出單一欄位 | select 欄位名 from 資料表名稱 where 欄位名 like '%字串%'; |
|
查詢比對字串列出所有欄位 | select * from 資料表名稱 where 欄位名 like '%字串%'; |
|
刪除條件值資料 | delete from 資料表名稱 where 條件式 (例如 sn='5' 或 id='91001' ); |
|
刪除條件值資料 | delete from 資料表名稱 where 條件式1 and 條件式2; |
|
刪除條件值資料 | delete from 資料表名稱 where 條件式1 or 條件式2; |
|
比對刪除條件值資料 | delete from 資料表名稱 where 欄位名 like '%字串%'; |
|
一筆數值找尋資料 | Select * from XXXX where XXXX = 'XXX'; |
|
兩筆數值找尋資料 | Select * from XXXX where XXXX = 'XXX'and xxxx='xxxx'; |
|
一筆資料找尋刪除資料 | delete from XXXX where xxxx='xxxx'; |
|
兩筆資料找尋刪除資料 | delete from XXXX where xxxx='xxxx' and xxxx='xxxx'; |
進階語法
操作功能 | SQL 語法 | 說明 |
---|---|---|
查看正在執行的行程 | show processlist; |
|
查看 Master 狀態 | show master status; |
|
查看 Slave 狀態 | show slave status\G; |
|
查看 binlog 狀態 | show binary logs; |
|
清除過時的 binlog | purge binary logs to 'mysql-bin.000006'; |
將刪除 mysql-bin.000001 ~ 5 的 binlog |