다른 테이블의 데이터로 MySQL 테이블을 업데이트하십시오

StackOverflow https://stackoverflow.com/questions/414828

  •  03-07-2019
  •  | 
  •  

문제

Sub Select를 사용하여 MySQL 5.0에서 업데이트 명령을 실행할 수 있습니까?

내가 실행하고 싶은 명령은 다음과 같습니다.

UPDATE book_details
SET live = 1 
WHERE ISBN13 = '(SELECT ISBN13 FROM book_details_old WHERE live = 1)';

ISBN13은 현재 문자열로 저장됩니다.

10k+ 행을 업데이트해야합니다.

감사,

윌리엄

도움이 되었습니까?

해결책

단지 조명이 바뀌면 당신은 그것을 얻었습니다.

UPDATE book_details
SET live = 1 
WHERE ISBN13 in (SELECT ISBN13 FROM book_details_old WHERE live = 1);

다른 팁

UPDATE table1 t1, table2 t2
SET t1.field_to_change = t2.field_with_data
WHERE t1.field1 = t2.field2;
UPDATE book_details AS bd, book_details_old AS old
SET bd.live=1  
WHERE bd.isbn13=old.isbn13  
AND old.live=1;

다른 테이블의 데이터에서 테이블을 업데이트합니다

UPDATE table1, table2 SET table1.field1 = table2.field1 where table1.id = table2.id

전.UPDATE transaction, member SET transaction.Memberid = member.memberId WHERE transaction.CardId = member.CardId;

다른 테이블에서 데이터를 업데이트합니다

UPDATE  tab t1
SET     t1.company_name = t2.company_name
FROM    tab t2
WHERE   t1.id = t2.id
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top