可以使用CASE WHEN语句,在满足条件时插入对应的值:

select
	id,
	CASE WHEN version != '1' 
				or retention_24 != 'eeeeee' 
				or para_64 != '0000000000000000'
				or retention_64 != 'eeeeeeeeeeeeeeee' THEN 1
			 WHEN UNIX_TIMESTAMP(STR_TO_DATE(start_time, '%Y%m%d%H%i%s')) - ts_float > 0 THEN 2
			 ELSE NULL END AS new_column
from test_1
where id = (
				select
				max(id)
				from test_1
			)

其中,CASE WHEN语句分别判断version,retention_24,para_64,retention_64和UNIX_TIMESTAMP是否满足条件,满足时插入对应的值,否则插入NULL。注意,需要在SELECT语句中添加新的列名和AS关键字

select		id		from test_1		where id = 						select						maxid						from test_1				and version != 1 				or retention_24 != eeeeee 				or para_64 != 0000000000000000				or retention_64 != eeeeeeeeeeeeeeee

原文地址: https://www.cveoy.top/t/topic/hgvF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录