0
필자는 필자에게 필요한 결과를 제공하지만 매우 느린 쿼리를 작성했습니다.mysql 쿼리 속도를 향상시킬 방법이 있습니까?
문제 : 매우 느립니다.
질문 : 내가 쿼리를 빠르게 할 수있는 방법이 있습니까?
SELECT ci.ctt_region_id,
ci.region_name,
cs.slot_set_date,
cs.ctt_photo_slot_id,
/* Mon*/
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '11:00:00'
) as mon_eleven_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '14:00:00'
) as mon_two_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '17:00:00'
) as mon_five_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '11:00:00'
AND ctt_region_id = ci.ctt_region_id
) as mon_eleven_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as mon_two_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-12'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as mon_five_timecount,
/* Tue*/
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '11:00:00'
) as tue_eleven_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '14:00:00'
) as tue_two_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '17:00:00'
) as tue_five_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '11:00:00'
AND ctt_region_id = ci.ctt_region_id
) as tue_eleven_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as tue_two_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-13'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as tue_five_timecount,
/* Wed*/
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '11:00:00'
) as wen_eleven_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as wen_two_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as wen_five_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '11:00:00'
AND ctt_region_id = ci.ctt_region_id
) as wen_eleven_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as wen_two_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-14'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as wen_five_timecount,
/* Thu*/
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '11:00:00'
) as thu_eleven_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as thu_two_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as thu_five_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '11:00:00'
AND ctt_region_id = ci.ctt_region_id
) as thu_eleven_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as thu_two_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-15'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as thu_five_timecount,
/* Fri*/
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '11:00:00'
) as fri_eleven_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '14:00:00'
AND ctt_region_id = cs.ctt_region_id
) as fri_two_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_set_time SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '17:00:00'
) as fri_five_time,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '11:00:00'
AND ctt_region_id = ci.ctt_region_id
) as fri_eleven_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '14:00:00'
AND ctt_region_id = ci.ctt_region_id
) as fri_two_timecount,
(SELECT GROUP_CONCAT(DISTINCT AA.slot_count SEPARATOR ',')
FROM ctt_photo_slot AA
WHERE slot_set_date = '2015-01-16'
AND slot_set_time = '17:00:00'
AND ctt_region_id = ci.ctt_region_id
) as fri_five_timecount
FROM ctt_photo_slot cs
JOIN ctt_region ci
ON cs.ctt_region_id = ci.ctt_region_id
GROUP BY region_name;
거룩한 선택 ... – Shahar