DB관련/DB관련 이슈

업무를 하면서 개인적으로 느낀 점을 서술하겠습니다. 틀린 내용이 있을 수도 있다는 점에서 유의 부탁드립니다. 1. 불필요한 CASE WHEN THEN예시나쁜 케이스SELECT emp_id, CASE WHEN salary >= 5000 THEN 'HIGH' ELSE 'LOW' END AS salary_grade, CASE WHEN dept_id = 10 THEN 'HR' WHEN dept_id = 20 THEN 'SALES' ELSE 'OTHER' END AS dept_name, CASE WHEN job_title LIKE '%Manager%' THEN 'MANAGER' ELSE 'STAFF' END AS job_level, -- 추가적인 C..
업무를 하던 중 서브 쿼리의 범위에 관한 에러가 발생하였다. SELECT (SELECT DEPT_NM (SELECT D.DEPT_NM AS DEPT_NM FROM ( SELECT DEPT ROW_NUMBER() ~ PARTITION () AS RN FROM USER_DEPT D WHERE D.USER_ID = U.USER_ID ) WHERE RN = 1 ) ) AS DEPT FROM BOARD B LEFT JOIN COMMENT C ON B.BOARD_ID = C.BOARD_ID LEFT JOIN USER U ON C.COMMENT_ID = U.USER_ID WHERE U.USER_ID = '입력된 값'; -- 유저 한 명 정보 나오게 됨 이런 쿼리였다. 일단 억지로 만들어 냈는데, 게시판에 댓글을 달은..