SQL выборка по дате

389
15 января 2017, 16:03

Пишу запрос на выборку ТОП-10 покупателей. Вывести покупателей за все время я смог запросто, но встал вопрос о сортировке по дате. Записал запрос таким образом, все выполняется, но сортировки по UNIX столбцу o.date не происходит. Запрос:

SELECT o.user_id, SUM(o.total_price) as nsum, o.date as odate, u.id as uid, u.balance as balance, u.name as login
FROM s_orders as o,s_users as u    
WHERE user_id!='NULL'  
AND   o.user_id=u.id  
AND   o.date >= UNIX_TIMESTAMP(DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY))   
GROUP BY user_id  
ORDER BY nsum DESC   
LIMIT 10 
Answer 1
  1. чтобы была сортировка по столбцу o.date её нужно явно указать в части ORDER BY

  2. сейчас o.date выбирается случайным образом из группы с одинаковым user_id, так как указан без групповых функций

Предположу, что вы хотите получить дату последнего заказа для каждого юзера, тогда используйте max(o.date) as odate

READ ALSO
Как сделать, чтобы DrawerLayout был поверх ActionBar?

Как сделать, чтобы DrawerLayout был поверх ActionBar?

Как сделать так, чтобы выдвижная панель выезжала на всю высоту экрана (высоту, а не ширину, с шириной все ясно)Я имею ввиду, чтобы она заезжала...

326
Деплой мавен проекта на томкэт

Деплой мавен проекта на томкэт

При деплое через консоль mvn tomcat7:deploy - все успешно, но когда я нажимаю в intellij idea на деплой выдает этоПолдня мучаюсь

469
Словарь на основе HashMap

Словарь на основе HashMap

Возникла необходимость создать класс словаря, метод которого для каждого слова возвращает его текстовое объяснениеИнициализировать словарь...

343
Живые обои Live Wallpaper

Живые обои Live Wallpaper

Доброго времени суток

448