Revert "优化查询速度"
This reverts commit 4298eb9f2f030b29fbf2b931cadbea9df9f5fb3b.
This commit is contained in:
parent
e82cfd8861
commit
f0baf86685
@ -183,15 +183,12 @@ balance_sum AS (
|
|||||||
cw_agg AS (
|
cw_agg AS (
|
||||||
SELECT
|
SELECT
|
||||||
aw.user_id,
|
aw.user_id,
|
||||||
COUNT(CASE WHEN cw.work_category = 2 THEN 1 END) AS uploaded_video_count,
|
COUNT(CASE WHEN cw.work_category = 2 AND cw.deleted_at = 0 AND (cw.origin_uuid = '' OR cw.origin_uuid IS NULL) AND cw.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS uploaded_video_count,
|
||||||
COUNT(CASE WHEN cw.work_category = 1 THEN 1 END) AS uploaded_post_count,
|
COUNT(CASE WHEN cw.work_category = 1 AND cw.deleted_at = 0 AND (cw.origin_uuid = '' OR cw.origin_uuid IS NULL) AND cw.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS uploaded_post_count,
|
||||||
COUNT(CASE WHEN cw.work_category = 2 AND cw.cost = 1 THEN 1 END) AS released_video_consumed,
|
COUNT(CASE WHEN cw.work_category = 2 AND cw.cost = 1 AND cw.deleted_at = 0 AND (cw.origin_uuid = '' OR cw.origin_uuid IS NULL) AND cw.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS released_video_consumed,
|
||||||
COUNT(CASE WHEN cw.work_category = 1 AND cw.cost = 1 THEN 1 END) AS released_post_consumed
|
COUNT(CASE WHEN cw.work_category = 1 AND cw.cost = 1 AND cw.deleted_at = 0 AND (cw.origin_uuid = '' OR cw.origin_uuid IS NULL) AND cw.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS released_post_consumed
|
||||||
FROM active_windows aw
|
FROM active_windows aw
|
||||||
LEFT JOIN cast_work cw ON cw.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
LEFT JOIN cast_work cw ON cw.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
||||||
AND cw.deleted_at = 0
|
|
||||||
AND (cw.origin_uuid = '' OR cw.origin_uuid IS NULL)
|
|
||||||
AND cw.submit_time BETWEEN aw.start_at AND aw.expired_at
|
|
||||||
GROUP BY aw.user_id
|
GROUP BY aw.user_id
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -199,13 +196,10 @@ cw_agg AS (
|
|||||||
cwa_agg AS (
|
cwa_agg AS (
|
||||||
SELECT
|
SELECT
|
||||||
aw.user_id,
|
aw.user_id,
|
||||||
COUNT(CASE WHEN 1 THEN 1 END) AS uploaded_data_count,
|
COUNT(CASE WHEN cwa.deleted_at = 0 AND (cwa.work_analysis_status IS NULL OR cwa.work_analysis_status != 1) AND cwa.submit_time BETWEEN UNIX_TIMESTAMP(aw.start_at) AND UNIX_TIMESTAMP(aw.expired_at) THEN 1 END) AS uploaded_data_count,
|
||||||
COUNT(CASE WHEN cwa.cost = 1 THEN 1 END) AS released_data_consumed
|
COUNT(CASE WHEN cwa.cost = 1 AND cwa.deleted_at = 0 AND (cwa.work_analysis_status IS NULL OR cwa.work_analysis_status != 1) AND cwa.submit_time BETWEEN UNIX_TIMESTAMP(aw.start_at) AND UNIX_TIMESTAMP(aw.expired_at) THEN 1 END) AS released_data_consumed
|
||||||
FROM active_windows aw
|
FROM active_windows aw
|
||||||
LEFT JOIN cast_work_analysis cwa ON cwa.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
LEFT JOIN cast_work_analysis cwa ON cwa.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
||||||
AND cwa.deleted_at = 0
|
|
||||||
AND (cwa.work_analysis_status IS NULL OR cwa.work_analysis_status != 1)
|
|
||||||
AND cwa.submit_time BETWEEN UNIX_TIMESTAMP(aw.start_at) AND UNIX_TIMESTAMP(aw.expired_at)
|
|
||||||
GROUP BY aw.user_id
|
GROUP BY aw.user_id
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -213,12 +207,10 @@ cwa_agg AS (
|
|||||||
ccr_agg AS (
|
ccr_agg AS (
|
||||||
SELECT
|
SELECT
|
||||||
aw.user_id,
|
aw.user_id,
|
||||||
COUNT(CASE WHEN 1 THEN 1 END) AS uploaded_report_count,
|
COUNT(CASE WHEN ccr.deleted_at = 0 AND ccr.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS uploaded_report_count,
|
||||||
COUNT(CASE WHEN ccr.cost = 1 THEN 1 END) AS released_report_consumed
|
COUNT(CASE WHEN ccr.cost = 1 AND ccr.deleted_at = 0 AND ccr.submit_time BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS released_report_consumed
|
||||||
FROM active_windows aw
|
FROM active_windows aw
|
||||||
LEFT JOIN cast_competitive_report ccr ON ccr.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
LEFT JOIN cast_competitive_report ccr ON ccr.artist_phone COLLATE utf8mb4_general_ci = aw.phone COLLATE utf8mb4_general_ci
|
||||||
AND ccr.deleted_at = 0
|
|
||||||
AND ccr.submit_time BETWEEN aw.start_at AND aw.expired_at
|
|
||||||
GROUP BY aw.user_id
|
GROUP BY aw.user_id
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -239,12 +231,10 @@ cvs_agg AS (
|
|||||||
tar_agg AS (
|
tar_agg AS (
|
||||||
SELECT
|
SELECT
|
||||||
aw.user_id,
|
aw.user_id,
|
||||||
COUNT(CASE WHEN tar.status = 1 THEN 1 END) AS progress_task_count,
|
COUNT(CASE WHEN tar.status = 1 AND tar.deleted_at = 0 AND tar.created_at BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS progress_task_count,
|
||||||
COUNT(CASE WHEN tar.status = 2 THEN 1 END) AS complete_task_count
|
COUNT(CASE WHEN tar.status = 2 AND tar.deleted_at = 0 AND tar.created_at BETWEEN aw.start_at AND aw.expired_at THEN 1 END) AS complete_task_count
|
||||||
FROM active_windows aw
|
FROM active_windows aw
|
||||||
LEFT JOIN ` + "`" + taskSchema + "`" + `.task_assign_records tar ON tar.sub_num COLLATE utf8mb4_general_ci = aw.customer_num COLLATE utf8mb4_general_ci
|
LEFT JOIN ` + "`" + taskSchema + "`" + `.task_assign_records tar ON tar.sub_num COLLATE utf8mb4_general_ci = aw.customer_num COLLATE utf8mb4_general_ci
|
||||||
AND tar.deleted_at = 0
|
|
||||||
AND tar.created_at BETWEEN aw.start_at AND aw.expired_at
|
|
||||||
GROUP BY aw.user_id
|
GROUP BY aw.user_id
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -335,11 +325,7 @@ LEFT JOIN assigned_pending_agg apa ON apa.user_id = aw.user_id`
|
|||||||
whereClause = " WHERE " + strings.Join(whereParts, " AND ")
|
whereClause = " WHERE " + strings.Join(whereParts, " AND ")
|
||||||
}
|
}
|
||||||
|
|
||||||
countFromClause := "FROM active_windows aw"
|
countSQL := cte + " SELECT COUNT(DISTINCT aw.customer_num) " + fromClause + whereClause
|
||||||
if req != nil && req.LastTaskAssignee != "" {
|
|
||||||
countFromClause += "\nLEFT JOIN task_mgmt tm ON tm.user_id = aw.user_id"
|
|
||||||
}
|
|
||||||
countSQL := cte + " SELECT COUNT(DISTINCT aw.customer_num) " + countFromClause + whereClause
|
|
||||||
var total int64
|
var total int64
|
||||||
if err := app.ModuleClients.BundleDB.Raw(countSQL, args...).Scan(&total).Error; err != nil {
|
if err := app.ModuleClients.BundleDB.Raw(countSQL, args...).Scan(&total).Error; err != nil {
|
||||||
return nil, 0, commonErr.ReturnError(err, "查询总数失败", "查询艺人上传统计总数失败: ")
|
return nil, 0, commonErr.ReturnError(err, "查询总数失败", "查询艺人上传统计总数失败: ")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user