SQL必知必會
打開服務:service sql start
進入數據庫:mysql -u root -p
查看數據庫:show databases;
進入數據庫:use 庫名
查看當前數據庫中所有表:show tables;
查看字段名:desc 表名;
查詢:select 字段名(uid,username,password) from 數據庫名.數據表名;
查詢指定字段的值:select * from 數據庫名.數據表名 where 字段=><值(字符型的要用‘’)
select SCHEMA_NAME from schemata;
schemata表中SCHEMA_NAME字段存放的是數據庫名稱
檢索數據
從1表中檢索2,3,4的列:
select 2,3,4(所有列) from 1*
從1表中檢索2的列的不同值:
select distinct 2(所有列) from 1;*
(使用distinct關鍵字必須放在列前面)
從1表中檢索m列的前n行的值 (不同的DBMS有不同的語法) :
Mysql,MariaDB,PostgreSQL:select m(所有列) from 1 limit n;*
DB2:select m from 1 fetch first n rows only;
Oracle:select m from 1 where rownum <=n;
從1表中檢索m的列從a行開始的b行的值:
select m from 1 limit b offset a;
註釋:–註釋內容;#註釋內容;/內容/(多行)**
排序檢索數據
升序排列某一列數據:
select 列 from 表 order by 列;(order by爲最後的字句)
升序排列多列(a表中的嗎m,n列先按m排序後按n排序):
select m,n from a order by m,n(1,2);
降序排列多列(a表中的嗎m,n列先按m排序後按n排序):
select m,n from a order by m desc,n desc;
用通配符進行過濾
%通配符(%表示任意字符出現任意次數):
Select m,n from a where n like ‘a%’;
檢索出n列中以a開頭的所有值;
_通配符(一個_只匹配一個字符):
Select m,n from a where n like ‘_a’;
[]通配符:
Select m,n from a where n like ‘[ab]%’;
檢索以a或b開頭的所有數據;
Select m,n from a where n like ‘[^ab]%’;
檢索除了以a或b開頭的所有數據;