본문 바로가기
MySql

MySQL에서 SUM ()으로 업데이트

by 베이스 공부 2020. 10. 5.
반응형

ID별로 그룹화 된 SUM (S_val) 으로 PAR 필드를 업데이트해야합니다.

PAR 값을 어떻게 UPDATE 할 수 있습니까?

UPDATE Table_Name SET PAR = (SELECT SUM(S_val) FROM Table_Name WHERE ID=1) 
FROM   Table_Name

작동하지 않습니다.

 

해결 방법

 

불행히도 MySQL 에서 자신과 조인 된 테이블을 업데이트 할 수 없습니다.

해결 방법으로 함수를 만들어야합니다.

DELIMITER $$

CREATE FUNCTION `fn_get_sum`(_id INT) RETURNS int(11)
READS SQL DATA
BEGIN
      DECLARE r INT;
      SELECT  SUM(s_val)
      INTO    r
      FROM    table_name
      WHERE   id = _id;
      RETURN r;
END $$

DELIMITER ;

UPDATE  table_name
SET     par = fn_get_sum(id)

 

참조 페이지 https://stackoverflow.com/questions/653826

 

 

반응형

댓글