Существуют три таблицы: «TA» и «TB» два принадлежат одной и той же базе данных, но третья таблица «TC» относится к другой базе данных. Мне нужно получить последнюю строку из третьей таблицы «TC» и на основе данных, полученных в последней строке, я должен получить все данные из «TA» и «TB». Пожалуйста, помогите мне в этом, так как есть две базы данных. Структуры таблиц: TA (id, usrId) TB (fk_usrId, deviceId, версия) TC (версия) Необходимо выбрать все устройство, имеющее последнюю версию. Последняя версия хранится в последней строке таблицы TC.Выберите данные из двух разных таблиц двух разных баз данных в SQL?
ответ
select ta.id,ta.userid from ta join tb on ta.userid=tb.usrid join tc on tc.version=tb.version and tc.version=(SELECT TOP 1 * FROM tc ORDER BY version DESC)
здесь им выбрать последний столбец, основанный на нет, то данный по алфавиту на основе ур необходимости использовать суб query.that должен быть уникальным
В SQL Server, если эти две базы данных находятся на одном сервере
SELECT * FROM FirstDB.Schemaname.TA INNER JOIN FirstDB.Schemaname.TC ON TA.userid = TB.user id and TB.version IN (SELECT TOP 1 version FROM SecondDB.Schemaname.TC ORDER BY version DESC)
в SQL Server, если эти две базы данных находятся в разных серверах
Тогда вам придется добавить еще один сервер в качестве связанного сервера в другой и использовать спецификатор сервер также в приведенном выше запросе
связанный сервер ссылок ссылка: https://msdn.microsoft.com/en-in/library/ms188279.aspx
Попробуйте для SQL Server:
select ta.*, tb.*
from
(select top 1 version from differentdb..tc order by version desc) t
inner join tb on tb.version = t.version
inner join ta on ta.id = tb.fk_usrId
Попробуйте это для MySQL:
select ta.*, tb.*
from
(select version from differentdb.tc order by version limit 0,1) t
inner join tb on tb.version = t.version
inner join ta on ta.id = tb.fk_usrId
Вы получили хорошие ответы. Чтобы уступить свой вопрос, отметьте один из ответов, принятый, если он вам поможет. – zedfoxus
Сначала Вам нужно добавить связанные сервера в серверных объектах, а затем записать таблицу NAM е как [ServerInstanceName]. [имя_базы_данных]. [SchemaName]. [TableName] для обеих таблиц следовать выше синтаксис в FROM референс запроса Остальной код будет нормально
- 1. Объединение двух таблиц из разных баз данных
- 2. Объединение двух дочерних таблиц из двух разных баз данных
- 3. Оператор SQL для выбора из двух разных таблиц из двух разных баз данных (тот же сервер)
- 4. Выбор из двух разных баз данных MYSQL
- 5. объединение двух таблиц из двух баз данных
- 6. SQL: подсчет двух разных столбцов из двух разных таблиц
- 7. PHP/MySQL - Сравнение таблиц из двух разных баз данных
- 8. Сравнение данных из двух разных баз данных
- 9. Как отображать данные из двух разных баз данных
- 10. Синхронизация некоторых таблиц из двух баз данных в разных СУБД
- 11. Слияние двух таблиц в sqlite из разных баз данных
- 12. MySQL: выберите Distinct из двух разных таблиц?
- 13. выберите из двух разных таблиц mysql
- 14. Запуск двух таблиц из двух разных баз данных для вставки данных (SQL Server)
- 15. Подключение двух разных баз данных в таблице
- 16. Отображение двух полей из разных баз данных
- 17. Объединение 3 таблиц из двух разных баз данных?
- 18. Вытягивание из двух баз данных, трех разных таблиц
- 19. Подстановка из двух разных таблиц в SQL
- 20. Использование данных из двух разных баз данных в приложении LightSwitch
- 21. Значения SQL из двух разных таблиц
- 22. Как получить данные из двух разных таблиц
- 23. Как сравнить данные из двух разных баз данных?
- 24. Объединить данные из двух таблиц из разных баз данных SQL Server в C#
- 25. Выбор данных из двух разных таблиц
- 26. Объединение таблиц из разных баз данных
- 27. Как получить данные из двух разных баз данных в POSTGRESQL
- 28. вычесть из двух разных таблиц
- 29. Как получить данные из двух разных таблиц?
- 30. MySQL: данные SUM из двух разных таблиц
размещать данные выборки и вывода, что вы хотите – mohan111
MySQL или sql-server? у них разные методы. – bansi