Trigger
-
PL/SQL 없이 한 테이블의 평균값을 구하여 다른 테이블에 UPDATE 하기개발/Database 2016. 12. 8. 14:40
무려 2년전 파이널 프로젝트 때 실제 코드 작성을 시작한 이후로 내가 제일 많은 시간을 투자했던 부분은 바로 DB였다.이 글도 당시 파이널 프로젝트 종료 직후에 삽질한게 너무 아까운 나머지 정리할 겸 비공개로 작성해놓고 검토하기 전에 갑자기 대형 프로젝트에 들어가는 바람에 묻힐 뻔 하다가 이제서야 발굴했다. 사용자들이 어떤 상품에 대해 별점을 입력하면 해당 상품에 대한 별점 평균을 계산하고,그 값을 다시 상품 테이블의 '평점' 컬럼 값으로 입력해주는 구조를 만들어내고 싶었다.항상 아무 생각도 없이 썼던 기능이었고, 필요한 로직도 다 이해했으니 금방 만들겠거니 했는데 금방 만들기는 개뿔....대략 3일동안 끙끙댔던 것 같다. 별점이 입력되는 순간 avg()를 써서 다른 테이블에 업데이트하는 트리거를 하나 ..