mysql 部分函式內容小記

2021-08-08 22:12:06 字數 2432 閱讀 4113

bit_length(str)返回字串的位元長度

concat(s1,s2...,sn)將s1,s2...,sn連線成字串

concat_ws(sep,s1,s2...,sn)將s1,s2...,sn連線成字串,並用sep字元間隔

insert(str,x,y,instr) 將字串str從第x位置開始,y個字元長的子串替換為字串instr,返回結果

find_in_set(str,list)分析逗號分隔的list列表,如果發現str,返回str在list中的位置

lcase(str)或lower(str) 返回將字串str中所有字元改變為小寫後的結果

left(str,x)返回字串str中最左邊的x個字元

length(s)返回字串str中的字元數

ltrim(str) 從字串str中切掉開頭的空格

position(substr,str) 返回子串substr在字串str中第一次出現的位置

quote(str) 用反斜槓轉義str中的單引號

repeat(str,srchstr,rplcstr)返回字串str重複x次的結果

reverse(str) 返回顛倒字串str的結果

right(str,x) 返回字串str中最右邊的x個字元

rtrim(str) 返回字串str尾部的空格

strcmp(s1,s2)比較字串s1和s2

trim(str)去除字串首部和尾部的所有空格

ucase(str)或upper(str) 返回將字串str中所有字元轉變為大寫後的結果

curdate()或current_date() 返回當前的日期

curtime()或current_time() 返回當前的時間

date_add(date,interval int keyword)返回日期date加上間隔時間int的結果(int必須按照關鍵字進行格式化),如:selectdate_add(current_date,interval 6 month);

date_format(date,fmt) 

依照指定的fmt格式格式化日期date值

date_sub(date,interval int keyword)返回日期date加上間隔時間int的結果(int必須按照關鍵字進行格式化),如:selectdate_sub(current_date,interval 6 month);

dayofweek(date) 

返回date所代表的一星期中的第幾天(1~7)

dayofmonth(date) 

返回date是乙個月的第幾天(1~31)

dayofyear(date) 

返回date是一年的第幾天(1~366)

dayname(date) 

返回date的星期名,如:select dayname(current_date);

from_unixtime(ts,fmt) 

根據指定的fmt格式,格式化unix時間戳ts

hour(time) 

返回time的小時值(0~23)

minute(time) 

返回time的分鐘值(0~59)

month(date) 

返回date的月份值(1~12)

monthname(date) 

返回date的月份名,如:select monthname(current_date);

now() 

返回當前的日期和時間

quarter(date) 

返回date在一年中的季度(1~4),如select quarter(current_date);

week(date) 

返回日期date為一年中第幾周(0~53)

year(date) 

返回日期date的年份(1000~9999)

一些示例:

select extract(year_month from current_date);

select extract(day_second from current_date);

select extract(hour_minute from current_date);

返回兩個日期值之間的差值(月數):select period_diff(200302,199802);

在mysql中計算年齡:

select date_format(from_days(to_days(now())-to_days(birthday)),'%y')+0 as age from employee;

這樣,如果brithday是未來的年月日的話,計算結果為0。

下面的sql語句計算員工的絕對年齡,即當birthday是未來的日期時,將得到負值。

select date_format(now(), '%y') - date_format(birthday, '%y') -(date_format(now(), '00-%m-%d')

Oracle到MySQL遷移小記 資料部分

1.ora2mysqcn 使用ora2mysqcn工具,完成表結構 表資料從oracle匯入到mysql中,部分中文資料因編碼問題,導致資料無法匯出。對無法匯出的庫表資料,需要採用其他途徑進行處理。工具匯出資料有誤時,提示資訊 create table mytab.done insert table...

mysql 替換字段部分內容

mysql replace的用法 替換某欄位部分內容 mysql replace的用法 1.replace into replace into table id,name values 1 aa 2 bb 此語句的作用是向表table中插入兩條記錄。如果主鍵id為1或2不存在就相當於 insert ...

mysql 替換字段部分內容

mysql replace的用法 替換某欄位部分內容 mysql replace的用法 1.replace into replace into table id,name values 1 aa 2 bb 此語句的作用是向表table中插入兩條記錄。如果主鍵id為1或2不存在就相當於 insert ...