반응형
동일한 테이블에 있는 다른 열의 값과 동일한 한 열의 SQL 설정 값
두 개의 DATETIME 열이 있는 테이블이 있습니다.
1개는 NULL이 아니지만 1개는 NULL이 될 수 있습니다.
열 B의 모든 NULL 행을 열 A의 값과 동일하게 설정하는 쿼리를 작성해야 합니다.
이 예제를 사용해 보았지만 MySQL Workbench가 업데이트의 FROM을 좋아하지 않는 것 같아 선택한 답변의 SQL이 실행되지 않습니다.
한 테이블에서 작업하는 것처럼 들리므로 다음과 같습니다.
update your_table
set B = A
where B is null
저는 이렇게 하겠습니다.
UPDATE YourTable SET B = COALESCE(B, A);
COALESCE는 첫 번째 null 이외의 인수를 반환하는 함수입니다.
이 예에서는 특정 행의 B가 늘이 아닌 경우 업데이트는 no-op이 됩니다.
B가 늘인 경우 COALESCE는 이를 건너뛰고 대신 A를 사용합니다.
UPDATE YourTable
SET ColumnB=ColumnA
WHERE
ColumnB IS NULL
AND ColumnA IS NOT NULL
당신이 찾는 다른 예는 아닌 것 같아요.같은 표의 다른 열에서 한 열을 업데이트하는 경우 다음과 같은 기능을 사용할 수 있습니다.
update some_table set null_column = not_null_column where null_column is null
다음은 열 A에서 열 B에 대처하는 데 도움이 되는 샘플 코드입니다.
UPDATE YourTable
SET ColumnB = ColumnA
WHERE
ColumnB IS NULL
AND ColumnA IS NOT NULL;
언급URL : https://stackoverflow.com/questions/7817007/sql-set-values-of-one-column-equal-to-values-of-another-column-in-the-same-table
반응형
'source' 카테고리의 다른 글
MariaDB: 테이블에 이름을 저장하는 방법 (0) | 2022.10.20 |
---|---|
길이가 같지 않은 두 리스트 간의 순열 (0) | 2022.10.20 |
새 속성을 동적으로 생성하는 방법 (0) | 2022.10.20 |
PHP DateTime 마이크로초는 항상 0을 반환합니다. (0) | 2022.10.20 |
Python에서 목록의 키와 빈 값을 사용하여 dict를 초기화하려면 어떻게 해야 합니까? (0) | 2022.10.20 |