ВСТАВЬТЕ В ВТОРОЙ СТОЛ С ИСПОЛЬЗОВАНИЕМ ГДЕ ОГОВОРКИ - PullRequest
0 голосов
/ 14 января 2019

Таблица «Маршруты» включает в себя один и тот же маршрут до 6 раз, требуется только вести запись с самой последней «Файловой датой» и копировать их в таблицу «Маршруты2»

Heidi SQL

TRUNCATE TABLE temp.Routes2 
INSERT INTO temp.Routes2 
SELECT * 
from temp.Routes 
where temp.`File Date` = select max(t2.`File Date`) from temp.Routes as t2
LIMIT 100

получить ошибку SQL 1064

Конечно, я просто скучаю, понял синтаксис

Большое спасибо Simon

Ответы [ 2 ]

0 голосов
/ 14 января 2019

Требуется скобки и ссылки из внешнего запроса, чтобы сделать его коррелированным подзапросом:

SELECT t.*
FROM temp.Routes as t1
WHERE temp.`File Date` = (select max(t2.`File Date`) 
                          from temp.Routes as t2
                          where t1.col = t2.col
                         );
0 голосов
/ 14 января 2019

Попробуйте ниже -

    INSERT INTO temp.Routes2 
    SELECT * 
    from temp.Routes a
    where a.`File Date` = (select max(t2.`File Date`) from temp.Routes as t2)
    order by temp.`File Date` limit 100
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...