문제

다른 테이블의 데이터와 함께 MySQL에서 테이블을 업데이트하고 싶습니다.

"사람"과 "비즈니스"테이블이 두 개 있습니다. People Table은 "Business_ID"라는 열로 비즈니스 테이블에 연결됩니다.

필요한 테이블 구조, 기본 키가 출연합니다 (표 : 열) : 사람 : *business_id, *sort_order, 이메일 비즈니스 : *business_id, 이메일

People Table의 이메일로 비즈니스 테이블 이메일 열을 업데이트하고 싶습니다.

UPDATE business b SET email = (SELECT email  from People p where p.business_id = b.business_id AND sort_order = '1') WHERE b.email = ''; 

이게 말이 되요? 가능합니까?

도움이 되었습니까?

해결책

UPDATE business b, people p
   SET b.email = p.email
 WHERE b.business_id = p.business_id
   AND p.sort_order = '1'
   AND b.email = ''

다른 팁

Sort_order가 int 인 경우 '1' - 사용 1을 사용하지 마십시오.

UPDATE business b
JOIN People p
ON p.business_id = b.business_id
AND p.sort_order = '1'
SET b.email = p.email
WHERE b.email = '';

이것을 시도해보십시오. 그것은 나에게 잘 작동합니다.

Update table a, table b
Set a.importantField = b.importantField,
a.importantField2 = b.importantField2
where a.matchedfield = b.matchedfield;
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top