코스모스팜 스레드

DB 업데이트 문

UPDATE users_db
SET mb_name =
(SELECT meta_value
 FROM `wp_usermeta`
 WHERE meta_key='first_name');

 

이렇게 했는데 Subquery returns more than 1 row 에러가 뜨네요.. 왜이러는건지요 ㅠㅠ

무제한으로 웹사이트를 만드세요. (코스모스팜 무제한 라이센스)
무제한으로 웹사이트를 만드세요. (코스모스팜 무제한 라이센스)
  • 안녕하세요~^^

    Subquery returns more than 1 row 메시지는

    서브 쿼리의 결과가 2개 이상이기 때문에 표시되는 듯합니다.

    어떤 쿼리를 만드시려는지 알려주시면

    저희 쪽에서 도움 드릴 방법이 있을지 고민해보겠습니다.

    고맙습니다.

  • users_db라는 테이블에 mb_name라는 컬럼에다가 wp_usermeta라는 테이블의 meta_value라는 컬럼값들을 업데이트하려고합니다.

    meta_key의 값이 first_name인값들만요 ㅠ

    충분한 설명이 되었을까요?

  • 안녕하세요.

    users_db 테이블에 wp_usermeta 테이블의 정보를 쿼리로 업데이트하시려면

    테이블 간 연결고리가 필요할 듯합니다.

    아래의 링크를 참고해보시겠어요?

    http://blog.freezner.com/archives/585

     

    UPDATE 문에 서브 쿼리를 사용하신다면

    결과가 여러 개일 경우 올려주신 것처럼 에러가 발생합니다.

    고맙습니다.

  • 연결고리가 될만한것이 없다면 어떻게 해야하죠...?

    회원넘버로 하려고했는데 회원넘버로 하면 중간중간에 누락된것때문에 맞지가 않아요 ㅠㅠ

  • users_db 테이블에는 어떤 컬럼이 있는지요?

    테이블의 테이터를 비교해서 업데이트하시려면

    고유하게 구분해줄 컬럼이 양 테이블에 있어야 할 듯합니다.

    고맙습니다.

  • users_db에는

    mb_no = 회원번호
    mb_id = 아이디
    mb_password = 비밀번호
    mb_name = 이름
    mb_email = 이메일
    mb_addr1 = 주소1
    mb_addr2 = 주소2
    mb_1 = 임시로 추가한 필드
    mb_2 = 임시로 추가한 필드

    정도가있습니다.

    회원번호와 wp_usermeta에 있는 user_id는 처음에는 일치하다가 중간쯤에는 누락되어서 맞지않습니다..

    그래서 회원번호와 매칭시켜서 옮기면 회원정보가 제대로 들어가지가않죠..

    이런경우에는 어떻게 해야할지..

    아이디와 비밀번호, 회원번호는 제대로 들어가있는 상태인데..

    나머지 wp_usermeta에 있는 정보들은 어떻게 update를 해야할지 ㅠㅠ

     

  • 안녕하세요.

    mb_id 컬럼이나 mb_email은 서로 매칭이 안 되는지요?

    usermeta 테이블의 user_id가 중간에 누락됐다는 말씀이신지요?

    mb_id 컬럼이나 mb_email 컬럼으로 해결이 안 되는지요?

    현재 데이터가 어떤 식으로 들어갔는지 저희 쪽에서 알 수 없기 때문에

    명확한 답변을 드리기 어렵습니다.

    고맙습니다.

이미지 사진은 imgur에 업로드한 뒤 링크 걸어주세요.
무제한으로 웹사이트를 만드세요. (코스모스팜 무제한 라이센스)