58 lines
1.6 KiB
SQL
58 lines
1.6 KiB
SQL
-- 修正 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 '%:%'; |