2012-01-23 2 views
0

셀에서 값을 가져 와서 해당 숫자가 참조하는 사용자의 텍스트 이름으로 바꾸는 방법이 있는지 알아 내려고하고 있습니다. 다른 테이블에.하나의 셀을 사용하여 다른 데이터베이스를 참조하고 쿼리에서이 둘을 결합하십시오.

하위 쿼리를 살펴 보았지만 그것이 내가 원하는 것이라고 생각하지 않습니다. 예를 들어 내 쿼리가 이제 userID, state, country로 돌아옵니다. 그리고 userID, name을 가진 또 다른 테이블이있다. 첫 번째 데이터베이스를 쿼리하지만 사용자 ID를 다른 테이블의 해당 이름으로 바꿔야합니다.

그게 가능합니까? 내 쿼리를 만들기 위해 mySQL Workbench를 사용하고 있습니다.

+0

분명히하기 위해 : 테이블에 저장된 값을 변경 하시겠습니까? 아니면 간단히 해당 이름을 쿼리에 표시 하시겠습니까? –

답변

0

나는 당신이이

UPDATE table1 SET userID = 
    (SELECT name FROM table2 
    WHERE table2.userID = table1.userID) 

당신은 단지 두 개의 테이블에서 결과를 얻기 위해 필요한 경우 (백업 !! 후)이 같이

SELECT t2.name, t1.state, t1.country 
FROM table1 t1 INNER JOIN table2 t2 
ON t1.userID = t2.userID 
+0

나는 심지어 그 업데이트 질의의 결과가 바람직 할 우주를 상상할 수도 없다. (나는 두 번째 쿼리가 무엇인지 궁금합니다.) –

+0

@djacobson : OP가 첫 번째 테이블을 업데이트하거나 두 테이블을 조인해야하는지 이해할 수 없습니다. 그리고 내 의심은 마크도 그의 의견과 함께 말한 ... – Marco

+0

완벽하게 일했다. 감사! – busboy10

0

를 사용할 수 있습니다 시도 할 수 필요한 이해한다면 ?

select u.username, l.logintime, l.logouttime 
from loginouttable l 
join usertable u on l.userid = u.userid 
관련 문제