1. 程式人生 > >MYSQL 常用語句與函式命令

MYSQL 常用語句與函式命令

進圖資料庫mysql –u root –p

輸入密碼後進入

 

 

 

 

檢視資料庫: show databases;

 

 

 

 

進入資料庫:use dvwa;

檢視該資料庫的表:show tables;

 

 

 

 

查操作:

select * from users; 查看錶中的的列

 

 

 

 

select user from users; 檢視users表中user這列的資訊

 

 

 

 

select * from users where user=’admin’ ;檢視users表中user=admin的所有資訊

 

 

 

增操作:

Insert into users values ('6','test','test','test','123456', '/root','2018-05-21','1')

 

 

 

改操作:

update users set user=’test01’ where user=’test’; 將user表中user=’test’改為user=’test01’

 

 

 

刪操作:

delete from users where user='test01'; 刪除user=’test01’行的資料

 

 

 

排序:預設升序,安先數字,後字母。

selecet * from users order by user;  將users表中user資料升序排序

 

 

 

select * from users order by user desc; 將users表中user資料降序排序

 

 

 

聯合查詢:

CREATE TABLE users1 SELECT * FROM users;  先將users表資料複製到新表users1中

 

 

select user from users union select password from users1;將users表中user欄位的值和users1表中的password欄位的值合併查詢

 

 

常用函式:

提取部分字元:

select mid(user,1,3) from users;從users表中提取user的前三個字元:

 

 

判斷執行:

select *,if(user=’admin’,’administrator’,’user’) AS role from users;在users表中,如果某一行的user值等於admin,那麼新增新的一列role,並將其賦值為administrator,如果user值不等於admin,則將其賦值為user,結果如下圖

 

 

 

 

擷取資料庫某一列欄位中的一部分:

select user,substr(user,1,3) from users; 擷取users表中user欄位的前3個字元

 

 

 

返回字串的第一個字元的ASCII碼值:

select ascii('admin');

 

 

 

ORD( )

返回字串str的第一個字元的ASCII碼值

select ord('admin');

 

 

 

CHAR( )

將ASCII值轉換為對應的字元,可將多個ASCII碼轉換為相應的字串

select char(97);

 

 

 

HEX( )

將字串轉換為十六進位制表示:

select hex('admin');

 

 

 

UNHEX( )

HEX( )函式的逆運算,將十六進位制轉換為字串表示

select unhex('61646D696E');

 

 

 

SLEEP( )

讓此SQL語句執行N秒鐘(判斷語句連用)

select *,if(1=2,sleep(2),sleep(3)) from users;

 

 

 

ExtractValue( )

對XML文件進行查詢的函式,從目標XML中返回包含所查詢值的字串

建立一個新表,表的名稱為x,並定義一個doc的欄位,欄位型別為varchar(),欄位長度為150。

create table x(doc varchar(150));

 

insert into x values('<book><title>A guide to the SQL standard</title><author>

<initial>CJ</initial><surname>Date</surname></author></book>');

 

select extractvalue (doc,'/book/author/initial') from x;

 

 

 

USER( )

查詢當前使用者名稱和主機名;

select user();

 

 

 

version( )或@@version

查詢當前資料庫的完整版本資訊

select @@version;

 

 

 

database( )

返回當前資料庫名稱

select database();

 

 

 

MD5( )

將字串進行MD5加密

select md5('123456');

 

 

 

left( )

返回字串最左邊的N個字元

select left('admin',2);

 

 

 

concat( )

用於將兩個字串連線起來,形成一個字串

select concat('hello','world');

 

 

 

count( )

返回符合指定條件的行一共有多少行

select count(user) from users;

 

 

 

floor( )

返回向下取整的數字

select floor(1.33);

 

 

 

rand( )

返回一個0和1之間的隨機數,如果包含引數,則根據引數,生成一個固定的值,不再變化。

select rand(),rand(),rand(1),rand(1),rand(2);

 

&n