Составить Sql запрос + php код для вывода
Добрый день.
Дано:
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.