mysql函式命令

2021-06-16 14:19:06 字數 3858 閱讀 6834

函式如下:

left,right  字串擷取

from_unixtime  格式化unix時間戳

concat  字串連線函式

max  取某列最大值

min  取某列最小值 

sum  計算某列的和

count 統計條數

md5  返回md5加密碼的串

format  格式化數字為xx,***,***.***x格式 比如1,1000.123

length   計算某個字串長度

distinct  去重複

replace  替換字串

in  指定查詢某個值的記錄

like  模糊查詢

is null    查詢某個條件為空(null),注:null不等於""

is not null   查詢某個條件不為為空(null)

match ... against ...     mysql的全文索引查詢

mysql left,right函式

left和right是一對擷取字串前幾位可後幾位的函式,left是從左向右開始計算,right相反是從右向左計算

例:select left(name,10) as name from user; 顯示使用者名稱的前10位

select right(name,10) as name from user; 顯示使用者名稱的後10位

select * from user where left(datetime,10)="2011-12-02"    取出2011-12-02日註冊的使用者

select * from user where left(datetime,7)="2011-12"    取出2011-12月註冊的使用者

left,right不僅僅可以用於擷取字串,還可以用在where條件上。特別是用在查詢條件上他的作用非常大。

mysql  from_unixtime函式

from_unixtime函式用來對unix時間戳進行格式化,格式化成我們易讀的日期時間格式。

例:select from_unixtime(time, "%y-%m-%d %h:%i:%s" ) as datetime from table; 把time欄位格式化成易讀的日期時間顯示(time為unix時間戳)

select *  from table where left(from_unixtime(time, "%y-%m-%d" ))='2011-12-02' 取出2011-12-02日的記錄

mysql concat 函式

concat函式 可以用來把某二個字元連線在一起查詢或顯示,也可以把字段和字串進行連線。

例:select concat(year,"-",month,"-",day) as datetime from table; 把表中year,month,day欄位連線起來顯示

select concat("my name is:",name) as name from table; 把字串和字段連線起來顯示

update software set icon=concat("",icon); 把資料庫中icon批量更新並在原有的icon前增加網域名稱 iteye.com

mysql max,min函式

顧名思義max函式用於查詢某個欄位中的最大值

例:select max(age) from user; 返回最大的年齡

select min(age) from user; 返回最小的年齡

mysql sum函式

sum函式 可對某個字元(int型)進行求和

例:select sum(money) from user 計算出所有人的金錢總數

select sum(money),area from user group by area 計算出各地區人員的金錢總數

mysql count函式

統計聚合函式,可對sql查詢的結果進行統計

例:select count(*) as total from user 計算出總會員 iteye.com

mysql md5函式

同php中的md5一樣,對某個字串進行加密

例:select md5(password) as password from user 把明碼的密碼進行md5加密顯示

insert into user(name,password) values("abc",md5("abc")); 寫入user表把密碼進行md5加密後儲存

mysql length函式

計算某個字段值的長度

例:select length(name) as length from user; 顯示出使用者名稱的長度

select * from table where length(aa) > 10 ; 查詢某字段長度大於10的記錄 php程式設計師站

mysql distinct函式

對某個欄位去重複,(在某些時候group by也可以做到)

例:select distinct(area) from user; 對地區進行去重複

select area,count(*) from user group by area; 對地區進行聚合並統計出數量

mysql replace函式

查詢某個字串並進行替換

例:select replace(icon,"www.iteye.com","img.iteye.com") from software; 把icon中的www.iteye.com替換成替換成img.iteye

.com顯示

update software set icon=replace(icon,"www.iteye.com","img.iteye.com") ; 把資料庫中icon的網域名稱批量進行查詢替換 www.iteye.com

mysql in函式

可批量指定幾個值作為查詢條件

例:select * from user where user_id in(1,2,3,4,5,100,200,333)

select * from user where user_name in("a","b","d")

mysql like函式

可對某個字段進行模糊查詢,"%"號用於匹配任意字元

例:select * from user where name like "%王%"; 查詢所有使用者名稱中帶"王"字元的使用者

select * from user where name like "%王";  查詢所有使用者名稱第乙個字元為"王"字的使用者

mysql is null函式

匹配某個字元為null值的記錄,注:null不代表空符串""

例:select * from user where a is null ; 查詢a欄位為null的使用者

select a.* from user as a left join add_user as b on a.user_id=b.user_id where b.user_id is null; 連表查詢附加表add_user中沒有附加使用者資訊資料的使用者

mysql is not null函式

和is null用法一樣,匹配某個字元不為空的記錄

mysql match ... against 全文匹配函式

mysql的全文匹配函式,要使用此函式查詢的字元必須增加了全文索引,另外mysql不支援中文全文索引,所以國人在開發中估計很少用到此函式。

match中包含要進行全文匹配的字段,多個欄位用","號分割 against為匹配的字串

例:select * from software where match(title,body) against("php"); 全文匹配title和body欄位中包含"php"的記錄

select * from software where match(title) against("php mysql"); 全文匹配title欄位中包含"php mysql"的記錄。

Mysql命令 常用函式

檢視資料庫 show database 選擇使用的資料庫 use 資料庫名 檢視表show tables 查詢表select from 表名 高版本mysql語句 注 mysql內建庫 名 information schema 查庫select schema name from informatio...

mysql 命令 mysql 命令

刪除 delete from user 刪除user表中所有記錄 不帶星號 顯示記錄數 select count 1 from user 不用count 效率低 可以替換成欄位名 select count tigan from tiku mysql create database db name 建...

mysql 函式命令及使用方法

select month 1977 09 01 00 00 00 獲取月份 select year 1977 09 01 00 00 00 獲取年份 select hour 1977 09 01 6 00 00 獲取小時 select second 1977 09 01 6 00 58 獲取秒 se...