쿼리 (Postgres) CASE
에 표시 할 열을 SELECT
다음과 같이 선택할 수 있습니다 .
SELECT CASE WHEN val = 0 THEN column_x
WHEN val = 1 THEN column_y
ELSE 0
END AS update, ...
UPDATE
Postgres 에서 쿼리를 수행 할 때 가능한 어떤 것이 있습니까 (예 : 업데이트 할 열 선택)? 나는 이것에 대해 아무것도 찾을 수 없었기 때문에 가정하지는 않지만 누군가가 영리한 대안을 가지고있을 것입니다 (절차를 사용하거나 열을 사용하여 각 열을 업데이트하여 열의 CASE
값에 새로운 값을 할당하거나 단순히 기존 값을 다시 할당 해야하는지 여부를 결정하는 것) 값). 쉬운 대안이 없다면 물론 대답으로 받아 들일 것입니다.
추가 정보 : 필자의 경우 업데이트 할 수있는 14 개의 잠재적 열이 있으며 일치하는 행당 하나만 업데이트됩니다 (업데이트 할 테이블은 쿼리에서 다른 열과 조인 됨). 업데이트 할 행 수는 다양 할 수 있으며 수십 또는 수백이 될 수 있습니다. 나는 가입 조건에 대한 인덱스가 있다고 생각합니다.