Как выбрать самую последнюю дату и время из 2 таблиц

0

Я искал вокруг, но не могу найти ответ, который я ищу.

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

Я пробовал этот запрос, надеясь, что он закажет два поля last_update_date и вернет этот результат, но запрос не работает. Любая помощь будет оценена по достоинству.

Msgstr "Выберите last_update_date из таблицы 1, Table2 order by last_update_date DESC Limit 1"

  • 1
    Есть ли ссылки на другие таблицы или на что-нибудь еще? Вы можете сделать UNION ALL для обеих таблиц и выбрать максимальную дату из них. У вас есть какой-либо идентификатор на табло, который вы хотите, или просто дата последнего обновления?
Теги:

3 ответа

2
Лучший ответ
SELECT MAX(last_update_date)
FROM (
    SELECT MAX(last_update_date) as last_update_date
    FROM Table1
    UNION ALL
    SELECT MAX(last_update_date)
    FROM Table2
) tMax
  • 0
    Это лучший ответ.
  • 0
    Я должен начать с извинения за то, что не был более конкретным. Это прекрасно работает, когда я запускаю запрос. Проблема в том, что я пытаюсь поместить оператор в оператор PHP PDO. Я получаю пустое возвращение, когда я сделал это $ sql = $ db-> prepare («SELECT MAX (last_update_date) FROM (SELECT MAX (last_update_date) as last_update_date FROM Table1 UNION ALL SELECT MAX (last_update_date) FROM Table2) tMax»); $ Sql-> Execute (); $ results = $ sql-> fetch (PDO :: FETCH_ASSOC); $ extract_date = $ results ['last_update_date']; echo $ extract_date;
Показать ещё 2 комментария
0
select * from 
( select last_update_date from table1 
  UNION ALL 
  select last_update_date from table2 
) order by last_update_date;
  • 1
    Если в MySQL есть max, возможно, выбрав max (last_update_date) из каждой, все еще использующей union, поэтому вы не выбираете каждую запись из обеих таблиц до получения максимальной даты
  • 0
    Да, вы на 100% правы, получить максимум за обе таблицы намного быстрее.
0
SELECT MAX(A.last_update_date) 
 (SELECT last_update_date FROM Table1
  UNION ALL
  SELECT last_update_date FROM Table2) A;

Ещё вопросы

Сообщество Overcoder
Наверх
Меню