SQL函式小記

2022-06-21 10:36:14 字數 1460 閱讀 5496

寫一篇筆記,記錄一下常見的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 ...