• Как правильно делать MYSQL join и сортировку?

    seriyPS
    @seriyPS
    Вы бы запрос отформатировали поаккуратнее - читать неудобно

    SELECT hy_content.seo,
           hy_content.id,
           hy_content.date,
           hy_content.sham_photos,
           hy_content.title
    FROM hy_content
    LEFT JOIN gl_views ON (hy_content.seo=gl_views.seo)
    WHERE hide=2
          AND hy_content.date > (NOW() - INTERVAL 1 DAY)
    ORDER BY gl_views.read DESC
    LIMIT 10

    Запрос вполне нормальный, если вам нужно вывести именно новости, опубликованные сегодня, которые больше всего посмотрели (посмотрели за всё время, но т.к. всё время это и есть сегодня, то ок).
    Если же нужно именно "самые просматриваемые за сегодня новости, неважно когда опубликованные", то нужно структуру таблиц менять. Т.е. если новость вышла год назад, а на неё вдруг именно сегодня зашла толпа народу.
    Ответ написан
    1 комментарий
  • Как правильно делать MYSQL join и сортировку?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Связь таблиц один-к-одному? Тогда грамотно будет держать всё в одной таблице. А так запрос нормально составлен.
    Ответ написан
    7 комментариев
  • Вывод новостей с мультикатегориями

    alt_r
    @alt_r
    Таблица: hy_content
    Поля: content_id title description

    Таблица: hy_category
    Поля: category_id content_id

    Добавление.
    INSERT hy_content (title) VALUES ('Новая статья')
    получаем ID новой статьи
    INSERT hy_category (category_id, content_id) VALUES (3, $content_id); // 3 - примеру ID категории "одежда"
    INSERT hy_category (category_id, content_id) VALUES (4, $content_id); // 4 - примеру ID категории "собаки"
    INSERT hy_category (category_id, content_id) VALUES (5, $content_id); // 5 - примеру ID категории "семья"
    INSERT hy_category (category_id, content_id) VALUES (6, $content_id); // 6 - примеру ID категории "обувь"

    Вывод статей по категориям.
    SELECT hy_content.* FROM hy_content 
    JOIN hy_category ON hy_category.category_id IN (3,4,5) // одежда, собаки и семья
    GROUP BY hy_content.content_id
    Ответ написан
    1 комментарий