寫一篇筆記,記錄一下常見的sql函式,以備之後的查詢需要。abs(num):絕對值函式
mod(被除數,除數):求餘函式
round(num,保留小數的位數):四捨五入函式concat(str1,str2):拼接字串函式
length(str):字串長度
lower(str)/upper(str):小/大寫函式
replace(物件str,要替換的str,替換後的str):字串替換函式
substring(字串,開始位置,擷取長度):擷取字串current_date:當前日期。select current_date;
current_time
current_timestamp:返回當前日期+時間
extract(日期元素 from 日期):擷取日期元素
示例:select extract(year from current_timestamp) as year;
日期元素還可以是:month,day,hour,minute,second
year
/month
/day
日期轉化字元
有些時候結合where
使用時,extract
實現一種功能會很麻煩。假設有一列pub_data,裡面的型別是varchar型別,但是代表的是日期(例如:2017-05-15)。存成varchar型別可能為了其他的程式讀取或者其他的軟體整理。
如果想提取這一列中大於2023年的資料,可以:
select * from mytable where year(pub_date)>2017;#month、day用法相似
cast:型別轉換
示例:
select cast('0001' as signed integer) as int_col;
select cast('2017-12-14'as date) as date_col;
coalesce(資料1,資料2,...):將null轉化為其他值引數可以有無限個,返回可變引數左側開始第乙個不是示例:null
的值。所以,包含null
的列,就可以轉化為其他的值,結果就不是null
了。
select coalesce(null,1) as col_1,
coalesce (null,'test',null) as col_2;
見之前的部落格
csdn位址 :
也可以致信進行交流 : [email protected]
sql查詢小記
1 在mysql中判斷某個字段是否為空需要使用is null 或者 is not null 在mysql5.2.7中測試通過。例子1 select from test where code is null 例子2 select from test where code is not null 2 s...
sql游標小記
游標優點 游標允許應用程式對查詢語句select 返回的行結果集中每一行進行相同或不同的操作,而不是一次對整個結果集進行同一種操作 它還提供對基於游標位置而對錶中資料進行刪除或更新的能力 缺點 處理大資料量時,效率低下,占用記憶體大 一般來說,能使用其他方式處理資料時,最好不要使用游標,除非是當你使...
sql連線小記
1.select from t1,t2 這個查詢將會產生笛卡爾積的結果,如果有where子句的話也會先產生一張笛卡爾積的表然後再篩選結果 2.select from t1 inner join t2 on t1.id t2.id 這個查詢會將兩張表都有匹配項才有結果產生 3.select from ...