mysql 动态联表查询

动态联表查询,不知道有几张表

在这里插入图片描述

这里 tables 是一个list集合

![“gps_warn_data_202001”,“gps_warn_data_202002”,“gps_warn_data_202003”,“gps_warn_data_202004”,“gps_warn_data_202005”]在这里插入图片描述
在这里插入图片描述


union all

select
vi.VH_CODE ‘vhCode’ ,
da.CHINA_NAME ‘chinaName’,
alarmType.DICT_DESC ‘warnType’,
date_format(gwd.START_TIME, ‘%y-%m-%d %h:%i:%s’) ‘startTime’,
case when PROCESS_USER is null then ‘未处理’ else ‘已处理’ end ‘processResult’
from
${item} gwd
JOIN
vehicle_info vi ON gwd.VH_GUID = vi.VH_GUID
LEFT JOIN
driver_acceptance da ON da.CARD_FIX_NO = gwd.CARD_FIX_NO
JOIN
(select DICT_CODE,DICT_DESC from info_ge_dict where TYPE_CODE = ‘ALARM_TYPE’ and DICT_CODE not in(‘1’,‘2’,‘3’)) alarmType on alarmType.DICT_CODE = gwd.WARN_TYPE

	</foreach>

用case when then else end 判断空字符串

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

手动查询序号

在这里插入图片描述

最后排个序

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_26634873/article/details/106429766