Использование одной ячейки для ссылки на другую базу данных и объединение двух в запросе

Я пытаюсь выяснить, есть ли способ взять значение в ячейке и заменить его текстовым именем пользователя, на которое это число ссылается в другой таблице.

Я просмотрел подзапросы, но не думаю, что это то, чего я хочу. Так, например, мой запрос теперь возвращается как userID, штат, страна. И есть еще одна таблица, которая имеет идентификатор пользователя, имя. Я хочу запросить первую базу данных, но заменить userID на соответствующее имя из другой таблицы.

Это выполнимо? Я использую MySQL Workbench, чтобы сделать мои запросы.

2 ответа

Решение

Если я понимаю, что вам нужно, вы можете попробовать это (после резервного копирования!)

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

Как это?

select u.username, l.logintime, l.logouttime
from loginouttable l
join usertable u on l.userid = u.userid
Другие вопросы по тегам