이것은 내 mysql 쿼리입니다.내 MYSQL 쿼리를 확인하고 조언 해주십시오.
SELECT s.s_nric AS nric,
s.s_name AS name,
s.s_psle_eng AS psle_eng,
s.s_psle_math AS psle_maths,
s.s_psle_aggr AS psle_aggr,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code LIKE 'FEEN%'
AND re.re_year = '2008'
AND re.re_semester = '2'
AND re.re_nric = s.s_nric) AS english_2008,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code LIKE 'FEMA%'
AND re.re_year = '2008'
AND re.re_semester = '2'
AND re.re_nric = s.s_nric) maths_2008,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code LIKE 'FEEN%'
AND re.re_year = '2009'
AND re.re_semester = '2'
AND re.re_nric = s.s_nric) AS english_2009,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code LIKE 'FEMA%'
AND re.re_year = '2009'
AND re.re_semester = '2'
AND re.re_nric = s.s_nric) maths_2009,
isc.isc_g_gpa AS isc_gpa
FROM si_student_data AS s
LEFT JOIN si_isc_gpa AS isc
ON isc.isc_g_nric = s.s_nric
WHERE 1 = 1
AND s.s_admission_year = '2008'
GROUP BY s.s_nric
ORDER BY s.s_gender,
s.s_name ASC
이 내 하위 쿼리
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code like 'FEEN%'
AND re.re_year='2008'
AND re.re_semester='2'
AND re.re_nric=s.s_nric) as English_2008,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code like 'FEMA%'
AND re.re_year='2008'
AND re.re_semester='2'
AND re.re_nric=s.s_nric) Maths_2008,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code like 'FEEN%'
AND re.re_year='2009'
AND re.re_semester='2'
AND re.re_nric=s.s_nric) as English_2009,
(SELECT re.re_mark
FROM si_results re
WHERE re.re_code like 'FEMA%'
AND re.re_year='2009'
AND re.re_semester='2'
AND re.re_nric=s.s_nric) Maths_2009
내 쿼리를 실행
이며, 서버가 실행 시간이 오래 걸릴 내 서브 쿼리를 확인하시기 바랍니다. 그래서 간단하게 만드는 방법? 제발 조언 해주세요.감사합니다.
'Maths_2009' 및 Maths_2008 이전에 쿼리에'AS '의 몇 가지 인스턴스가 누락 된 것처럼 보입니다. – Sampson
알겠습니다. 하지만 이것은 선택 사항입니다. 권리? – Suba
안녕하세요, 조나단, 내 질문에 이미지 파일을 첨부하는 방법을 알고 있습니까? 답장을 보내 주셔서 감사합니다. – Suba