42 lines
1.1 KiB
Java
42 lines
1.1 KiB
Java
-- 修复应急单参与人员子表数据
|
|
INSERT INTO emergency_order_operator (id, order_id, operator_type, user_id, join_type, join_date) SELECT
|
|
CONCAT(2,LPAD(FLOOR(RAND() * POWER(10, 10)), 10, '0'), LPAD(FLOOR(RAND() * POWER(10, 7)), 7, '0')) AS id,
|
|
t.*
|
|
FROM
|
|
(
|
|
SELECT
|
|
id AS order_id,
|
|
0 AS operator_type,
|
|
operation_user_id AS user_id,
|
|
0 AS join_type,
|
|
operation_response_time AS join_date
|
|
FROM
|
|
emergency_order
|
|
WHERE
|
|
operation_user_id IS NOT NULL UNION ALL
|
|
SELECT
|
|
id AS order_id,
|
|
1 AS operator_type,
|
|
major_user_id AS user_id,
|
|
0 AS join_type,
|
|
major_response_time AS join_date
|
|
FROM
|
|
emergency_order
|
|
WHERE
|
|
major_user_id IS NOT NULL UNION ALL
|
|
SELECT
|
|
id AS order_id,
|
|
1 AS operator_type,
|
|
major_user_two_id AS user_id,
|
|
0 AS join_type,
|
|
major_response_time AS join_date
|
|
FROM
|
|
emergency_order
|
|
WHERE
|
|
major_user_two_id IS NOT NULL
|
|
) t
|
|
LEFT JOIN emergency_order_operator t1 ON t1.order_id = t.order_id
|
|
AND t1.user_id = t.user_id
|
|
AND t1.operator_type = t.operator_type
|
|
WHERE
|
|
t1.id IS NULL; |