Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Добрый день.

Дано:

create table news (

 news_id int(7) unsigned not null auto_increment,

 news_title varchar(255),

 news_slug varchar(255),

 news_text text,

 news_date_created datetime,

 news_status int(1) unsigned not null default 0,

 primary key(news_id)

);

create table category (

 category_id int(3) unsigned not null auto_increment,

 category_title varchar(255),

 category_slug varchar(255),

 category_id_parent int(3) unsigned not null default 0,

 primary key(category_id)

);

create table news_category (

 news_id int(7) unsigned not null,

 category_id int(7) unsigned not null,

 primary key(news_id,category_id)

);

пример: http://prntscr.com/pashtc

Старый запрос:

select group_concat(nc.category_id) as ids,

n.news_id id, n.news_title title,

n.news_slug slug, n.news_text text, n.news_date_created date

from news n

join news_category nc on nc.news_id = n.news_id

where n.news_status = 1

group by n.news_id

order by n.news_id desc

limit 7

Задача:

Как мне объяснили, в group by должно быть перечисление всех полей в select, то есть по стандарту SQL мой запрос неверен. Поэтому:

1. Нужно вывести новости с перечислением категорий, в которых данная новость находится.

2. Нужно вывести новости с перечислением категорий, в которых данная новость находится, при условии, что мы добавляем в условие какую-то одну категорию.

where nc.category_id = '13'

3. Показать php код с выводом новостей для задачи 1 и 2.

5 лет назад
kamtm
Тимур 
36 лет
16 лет в сервисе
Был
3 года назад

Заявки фрилансеров

Нет заявок фрилансеров