Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> mysql запрос помогите правильно составить, Вывод из каждой категории по 1 свежей 
:(
    Опции темы
Sanchezzz
Дата 26.7.2012, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: нет
Всего: 60



Добрый день помогите правильно отсортировать данные.

В общим суть такова нужно отсортировать категории порядок вывода помери добавления новости + показать количество новостей.

Вот что у меня получилось но работает не правильно категории не сортируются 
Код


SELECT tvp.name, tvp.link, tvp.logo, n.news_time, c.catid, count(n.id) as ncount
FROM gst_shortnews n
INNER JOIN gst_shortnews_video v ON v.news_id = n.id
INNER JOIN gst_cat2news c ON c.catid
IN ( 38, 40, 41, 46, 45, 36, 47, 43, 48, 49 ) 
AND c.newsid = n.id
LEFT JOIN gst_tvprogram tvp ON tvp.idcat = c.catid
WHERE n.news_time < NOW( ) 
GROUP BY c.catid
ORDER BY n.news_time DESC LIMIT 8



таблица gst_tvprogram  содержит название и ссылку на раздел 
INNER JOIN gst_shortnews_video v ON v.news_id = n.id 
для того чтобы выбрать новости содержавшие видео
INNER JOIN gst_cat2news c ON c.catid 
сами категории 

сколько учу mysql толком не могу разобраться внем...


Это сообщение отредактировал(а) Sanchezzz - 26.7.2012, 10:56


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Wolf1994
Дата 26.7.2012, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: нет
Всего: 29



По-моему, такой подход - такая же крайность, как и полный отказ от реляционных СУБД. Попробуйте разложить всё на простые запросы, оптимизировать каждый из них, добавить индексы, при возможности закэшировать часто-используемые и перенести в MEMORY с небольшими по объёму данными... а после сравнить по производительности с первоначальным smile 
PM MAIL WWW   Вверх
Zloxa
Дата 26.7.2012, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 53
Всего: 161



Цитата(Sanchezzz @  26.7.2012,  11:54 Найти цитируемый пост)
n.news_time

У вас есть категория которая содержит несколько новостей. Дату какой новости из них вы желаете отобразить? MySQL отобразит любую из нескольких. 
То же самое и при сортировке. Сортировка производится, но производится по любой дате из множества возможных. По какой - хз. В разные времена может быть по разному.

order by max(n.news_time) desc ?


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




[ Время генерации скрипта: 0.0663 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.