1、取到查詢條件為乙個欄位的擷取部分
select
a.order_no
from t_order a
where
a.deleted =
0 and substring
(a.order_no,1,
8)= # order by
a.add_time desc
limit 1
2、字段逗號隔開的函式使用find_in_set,獲取根據字典查詢的名稱拼接
/**
* 1.獲取當前階段名稱
*/inspecttitlecustomertemp.
setcurrentphaselabel
selectitemlabelsstr
(new
dictitemlabelsstrdto
("d**d"
,"t_inspect_title_customer"
,"current_phase"
,id)))
;select
group_concat
(b.item_label) str
from
$ aleft join t_dict_item b
left join t_dict c
on b.dict_id = c.id
on find_in_set
(b.item_value,a.$
) where c.dict_key = #
and a.id = #
3、根據多個條件分組,和排序
group by
a.id,
c.id
order by
c.edit_time desc,
d.edit_time desc
4、模糊查詢乙個list集合多個條件查詢乙個逗號拼接的字段
<
if test=
"search.currentphase != null and search.currentphase.size > 0"
>
"search.currentphase" item=
"item" index=
"index" open=
"" separator=
"" close=
"">
and t.current_phase like '%$%'
<
/foreach>
>
5、使用函式獲取比較時間段大小
獲取時間加上五年大於現在時間減去三個月
date_add
( a.last_yearly_inspect_date, interval 5 year )
>
date_sub
(now()
,interval 3 month )
6、coalesce關鍵字的使用
coalesce是sql標準裡面的乙個關鍵字,我們可以和聚合函式sum,count,max等一起使用完成一些特殊的功能。
1、查詢某乙個列總和,如果沒有資料或者null返回0
表字段中有乙個字段:公里數(f_gls)
,統計總的公里數
coalesce (
sum(f_gls),0
) distance
2、查出最大值
表字段中有乙個字段:模組id
(f_moudleid),查詢最大值
coalesce
(max
(f_moudleid),0
) max_moudleid
3、綜合使用:格式化
根據知識庫表裡面的記錄,生成下一條知識庫id
select
concat
('kb'
,date_format
(now()
,'%y%m%d'),
lpad
(coalesce
(count
(id),0
)+1,
3,'0')
) from
user_knowledgebase
where
datediff
(date
(now()
),date
(createtime))=
0
7、sql根據查詢順序返回結果
select id,autonum from program where autonum in (
202000016
,202001072
) order by field
(autonum,
202000016
,202001072
);
mysql 函式使用
over不能單獨使用,要和分析函式 rank dense rank row number 等一起使用。使用 引數描述condition 必須,判斷條件 value if true 可選,當條件為true值返回的值 value if false 可選,當條件為true值返回的值 使用例項 編寫乙個 s...
mysql 常用函式使用
and year t2.checkout time year 函式接收date型別,返回乙個年份。還有month 函式,乙個用法 mysql select year 2018 01 01 year 2018 01 01 2018 1 row in set大於。小於的,需要轉義。and t2.age ...
mysql函式使用集合
mysql函式使用集合整理 後續有用到的函式,會新增進來 strlist格式 引數以 分隔 如 1,2,6,8 這個函式很適合用來查詢包含多個值得列 find in set str,strlist select from student where find in set 值,欄位名 返回傳入的天數...