-- 修正 t_app_wcs_task_bak 表中 vehicle_id 字段的异常数据 -- 将 FC 开头的时间格式数据修正为 NULL 或默认值 -- 1. 首先查看异常数据 SELECT wcs_task_id, vehicle_id, create_time, remark FROM t_app_wcs_task_bak WHERE vehicle_id LIKE 'FC%' OR vehicle_id LIKE '%/%' OR vehicle_id LIKE '%:%' ORDER BY create_time DESC; -- 2. 统计异常数据数量 SELECT COUNT(*) as total_records, COUNT(CASE WHEN vehicle_id LIKE 'FC%' THEN 1 END) as fc_records, COUNT(CASE WHEN vehicle_id LIKE '%/%' THEN 1 END) as date_format_records, COUNT(CASE WHEN vehicle_id LIKE '%:%' THEN 1 END) as time_format_records FROM t_app_wcs_task_bak WHERE vehicle_id LIKE 'FC%' OR vehicle_id LIKE '%/%' OR vehicle_id LIKE '%:%'; -- 3. 修正方案1:将异常数据设置为 NULL UPDATE t_app_wcs_task_bak SET vehicle_id = NULL WHERE vehicle_id LIKE 'FC%' OR vehicle_id LIKE '%/%' OR vehicle_id LIKE '%:%'; -- 4. 修正方案2:将异常数据设置为默认载具号(如果需要) -- UPDATE t_app_wcs_task_bak -- SET vehicle_id = 'DEFAULT_VEHICLE' -- WHERE vehicle_id LIKE 'FC%' -- OR vehicle_id LIKE '%/%' -- OR vehicle_id LIKE '%:%'; -- 5. 验证修正结果 SELECT wcs_task_id, vehicle_id, create_time, remark FROM t_app_wcs_task_bak WHERE vehicle_id IS NOT NULL ORDER BY create_time DESC LIMIT 20; -- 6. 检查是否还有异常数据 SELECT COUNT(*) as remaining_abnormal_records FROM t_app_wcs_task_bak WHERE vehicle_id LIKE 'FC%' OR vehicle_id LIKE '%/%' OR vehicle_id LIKE '%:%';