2014-01-17 5 views
0

두 개의 테이블 A &이 있습니다. 둘 다 공통 열을 가지고 있습니다. A는 대부분의 열이 비어 있지만 B는 대부분이 가득차 있습니다.다른 테이블을 쿼리하여 한 테이블의 값을 채우십시오.

내가 &는 A. 그들을 업데이트 테이블 B에서 다른 빈 열 정보를 얻을 수 & 사용 비어 있지있는 A의 열을 선택하는 쿼리를 작성하려면

난을 것 같은데요 여기에서 업데이트를 위해 선택해야하지만 확실하지는 않습니다. 도움이 필요하다.

표 A
이름 주소 PHONENUMBER
닉 2 세인트 NY 널
댄 널 (null) 123-456-7890

표 B
이름 주소 PHONENUMBER 섹스
닉 2 세인트 NY 987-654-3210 M
단 5 세인트 NY 123-456-7890 M

결과는 테이블 A가 queryin하여 빈 열을 채 웁니다해야 즉 A에 비어 무엇 때문에 열 SEX는 A. (A)에 존재하지 않는 g 테이블 B. 그냥 전화 번호 & 주소가 필요합니다

결과
표 A
이름 주소 PHONENUMBER
닉 2 세인트 NY 이런 987-654-3210
단 5 세인트 NY 123-456-7890

+0

간략한 시작 데이터 세트와 샘플을 원하는 게시자가 질문을 명확히하기 위해 게시 한 경우 도움이 될 수 있습니다. – Dan

+0

[COALESCE()] (http://dev.mysql.com /doc/refman/5.0/en/comparison-operators.html#function_coalesce) 기능도 있습니다. 발견 된 첫 번째 비 null 값을 선택합니다. –

답변

0

뭔가 :

UPDATE 
A INNER JOIN B ON A.column = B.column /*the columns that connect the tables*/ 
SET A.almost_empty_column = B.full_column 
WHERE A.almost_empty_column IS NULL OR A.almost_empty_column = ''; 

하지만 난 당신이 근래 것이 좋을 것 적어도 매뉴얼이 아니라면 튜토리얼을보고 그냥 복사하지 마십시오. & 인터넷에 어떤 사람의 게시물을 붙여 넣으십시오. 당신은 무슨 일이 일어나는지 이해하려고하지 않음으로써 배우지 못합니다.

관련 문제