테이블 구조를 변경하지 않고 MySQL에서 열 값 교환
질문:
교환할 수 있나요? 테이블 구조를 수정하지 않고 MySQL 테이블의 두 열에 있는 값을 어떻게 사용할 수 있습니까? 사용자 권한 제한으로 인해 열 이름을 바꾸는 것은 옵션이 아닙니다.
답변:
예, 다음을 사용하여 테이블 구조를 변경하지 않고도 MySQL에서 열 값을 바꿀 수 있습니다. 업데이트 쿼리입니다. 다음은 세 가지 방법입니다.
방법 1:
UPDATE table SET x=y, y=@temp WHERE (@temp:=x) IS NOT NULL;
이 방법은 임시 변수를 사용하여 업데이트 중에 한 열의 값을 유지합니다. 두 열 모두 NULL이 아닌 값을 가져야 합니다.
방법 2:
UPDATE table SET x=(@temp:=x), x = y, y = @temp;
이 방법은 더 우아한 것으로 간주되며 NULL 및 NULL이 아닌 값을 모두 처리합니다. .
방법 3:
UPDATE table s1, table s2 SET s1.x=s1.y, s1.y=s2.x WHERE s1.id=s2.id;
이 방법은 자체 조인을 사용하여 열 값을 교환하므로 기본 키가 있는 테이블에 적합합니다. NULL 값도 처리합니다.
참고:
각 방법에는 고유한 장점과 한계가 있습니다. 특정 요구사항과 데이터 특성에 가장 적합한 방법을 선택하세요.
위 내용은 테이블 구조를 변경하지 않고 MySQL에서 열 값을 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!