У меня есть запрос на SQL-сервере, в котором я использовал внешний вид. Теперь я хочу преобразовать его так, чтобы запрос мог работать и на SQL-сервере, и на MySQL.Альтернативный способ для внешнего применения в SQL Server
select top 5 v.sVehicleName as VehicleNo, ll.Location
from vehicles v
outer APPLY
(select top 1 Location
from location_history
where vehicle_id = v.vehicle_id) ll
Мне нужно скрывать этот запрос, чтобы я мог работать в обеих базах данных.
Это мои таблицы
создать таблицу #vehicles (vehicle_id ИНТ sVehicleName VARCHAR (50))
создать таблицу #location_history (vehicle_id Int, расположение VARCHAR (50), дата DateTime)
вставка в #vehicles значения
(1, 'МН 14 аа 1111'),
(2, 'МН 12 бб 22 22 '),
(3,' МН 13 куб.см 3333 '),
(4,' МН 42 дд 4444')
вставки в #location_history значений
(1, 'ааа', GETDATE()),
(1, 'BBB', GETDATE()),
(2, 'ссс', GETDATE()),
(2, 'ддд', GETDATE()),
(3, 'еее', GETDATE()),
(3, 'FFF', GETDATE()),
(4, 'ггг', GETDATE()),
(4, 'HHH', GetDate())
Это запрос, который я исполняю в сервере SQL.
выберите v.sVehicleName, как VehicleNo, ll.Location
от #vehicles v
внешняя APPLY
(выберите верхний 1 Расположение от #location_history , где vehicle_id = v.vehicle_id) LL
Это выводится на SQL-сервере.
VehicleNo Расположение
MH14 аа 1111 ааа
MH12 бб 2222 ссс
MH13 куб.см 3333 еее
MH42 дд 4444 ггг
Я хочу, чтобы выполнить это в MySQL. и я хочу, чтобы тот же результат упоминался выше.
Можете ли вы добавить данные таблицы и ожидаемый результат? – bmsqldev
в таблице автомобилей есть две колонки vehicle_id, vehicle_name в location_history Есть два столбца vehicle_id, местоположение, дата в таблице истории местоположения может быть несколько записей для каждого транспортного средства – suraj
Я хочу, чтобы первая запись из таблицы истории местоположений для каждого транспортного средства, которое присутствует в транспортные средства стол. – suraj