2013-11-12 4 views
3

У меня есть столбец Дата с таким же именем в четырех таблицах Продукты, клиенты, магазины, мир в mysql. что я хочу сделать, это то, что я хочу найти наибольшую дату в DATE COLUMN из всех четырех таблиц. Я не хочу наибольшую дату для каждого стола, но самый лучший из всех четырех таблиц. Надеюсь, вы понимаете. Пожалуйста, помогите мнеНайти наибольшее значение среди четырех таблиц в mysql

ответ

8

Наиболее эффективным способом я могу думать о том, будет использовать в greatest функцию:

select greatest(
    (select max(date) from products), 
    (select max(date) from customers), 
    (select max(date) from shops), 
    (select max(date) from world) 
) greatest_date 

SQLFiddle демо

+3

+1 Хорошее мышление. Единственное, что вам нужно сделать, это поместить каждый выбор в круглые скобки. Иначе это не сработает. – peterm

+0

@Mosty Я попробовал, но он попросил меня проверить руководство. –

+1

+1 Мосты. и большое спасибо вам. Ваши идеи вызвали у меня много разочарований. Большое спасибо .. :) –

3

Это может работать:

SELECT MAX(Date) as Max_Date 
FROM (
    SELECT Date FROM Products 
    UNION 
    SELECT Date FROM Customers 
    UNION 
    SELECT Date FROM Shops 
    UNION 
    SELECT Date FROM World 
) AS P; 
+4

+1 для [Mosty Mostacho] (http://stackoverflow.com/users/268273/mosty-mostacho). Это намного лучше, чем у меня. – Litmus

+0

+1 Спасибо за вашу идею тоже Вечный ученик. Очень ценится –

Смежные вопросы