2014-02-21 4 views
-1

У меня есть 3 mysql таблицы, как, как эти:Mysql - Получение последнего содержимого из 3 различной таблицы

a) books -> id, name, price, date 

b) audio -> id, name, price, date 

c) parfume -> id, name, price, date 

Примечание: все даты являются phptime() формата.

сейчас; могу ли я получить последние 10 записей из их смешения по их значению date?

, например:

1- hobbit book -> 10.10.2013 09:10 

2- metallica cd -> 10.10.2013 06:10 

3- dostoyevski book -> 10.09.2013 15:00 

4- armani parfume -> 10.09.2013 10:00 

5- madonna cd -> 10.08.2013 16:00 

6- .... 
+2

[Как задать хороший вопрос?] (Http://stackoverflow.com/help/how-to-ask). Пожалуйста, улучшите свой вопрос, также покажите запрос, который вы создали. – bluemax

+0

Таблица содержит строки для дат, а не времен? Кроме того, может потребоваться уточнение «последней добавленной 10 записей из их сочетания по их значению даты», предпочтительно по данным выборки и образцу желаемого результата. –

+0

«Могу ли я получить последнюю добавленную 10 записей из их смешения по их значению даты», можете ли вы указать, как вы смешиваете таблицы? –

ответ

0

попробовать это

select * from (select * from books 
      union 
      select * from audio 
      union 
      select * from parfume) 
    order by date desc limit 10 
+0

thnks frnd, u нужно также увеличить рейтинг, – uvais

0

Убедитесь, что вы преобразовать столбцы даты в MySql, так что условие order by возвращает результат в правильном порядке.

SELECT * FROM (
    SELECT id, name, price, STR_TO_DATE(date, '%c/%e/%Y %r') FROM books 
    union 
    SELECT id, name, price, STR_TO_DATE(date, '%c/%e/%Y %r') FROM audio 
    union 
    SELECT id, name, price, STR_TO_DATE(date, '%c/%e/%Y %r') FROM parfume 
) as T1 
ORDER BY T1.date desc 
LIMIT 10 
Смежные вопросы