Использование одной ячейки для ссылки на другую базу данных и объединение двух в запросе
Я пытаюсь выяснить, есть ли способ взять значение в ячейке и заменить его текстовым именем пользователя, на которое это число ссылается в другой таблице.
Я просмотрел подзапросы, но не думаю, что это то, чего я хочу. Так, например, мой запрос теперь возвращается как 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