sql
@1,concat 和 case when 用法 拼接字段名和修改名
例子:select CONCAT( s.site_name, ‘(’, CASE WHEN s.station_type = ‘0’ THEN ‘微型站’ WHEN s.station_type = ‘1’ THEN ‘小型站’ WHEN s.station_type = ‘2’ THEN ‘标准站’ END, ‘)’ ) siteName from pz_air_site s
concat()函数
1、功能:将多个字符串连接成一个字符串。
2、语法:concat(str1, str2,…)
返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。
3、语法:concat(str1, seperator,str2,seperator,…)
返回结果为连接参数产生的字符串并且有分隔符,如果有任何一个参数为null,则返回值为null。
case when()函数
CASE SCORE WHEN ‘A’ THEN ‘优’ ELSE ‘不及格’ END
二 模糊查询
select
@pageTag(){
s.site_name,c.*
@}
from fume_check c
left join fume_site s
on s.id=c.site_id
where 1=1
@if(!isEmpty(siteCode) && siteCode != null){
and s.id =#siteCode#
@}
@if(!isEmpty(searchText) && searchText != null){
and s.site_name like CONCAT("%", #searchText#, “%”)
@}
三 分组并取每组的最新数据
select * from (
SELECT h.site_id,h.data_time,h.Ba,h.PMX,h.OIS,h.VOC,h.Ts,h.Xsw,h.Qr,h.JHA,h.FJA,h.GPSx,h.GPSY,s.site_name,
s.equipment_code,s.alarm_limit
from fume_site s left join fume_minute_data h on
h.site_id =s.id
) a where a.data_time = (
select max(data_time ) from (
SELECT h.site_id,h.data_time,h.Ba,h.PMX,h.OIS,h.VOC,h.Ts,h.Xsw,h.Qr,h.JHA,h.FJA,h.GPSx,h.GPSY,s.site_name,s.equipment_code,s.alarm_limit
from fume_site s left join fume_minute_data h on
h.site_id =s.id
) q
where q.equipment_code = a.equipment_code)