Вывод строк таблицы БД по массиву значений

229
09 ноября 2017, 04:20

Как сформировать запрос, который выведет по две первые строки по sports, it и т.д.

Вывод конкретно для данной на скрине таблице должен быть такой:

Answer 1

Предположим ваша таблица: id || text || news_category

Тогда:

select id, `news_category`, text 
from 
(
   select id, `news_category`, text ,
      (@num:=if(@group = `news_category`, @num +1, if(@group := `news_category`, 1, 1))) row_number 
  from table1 t
  CROSS JOIN (select @num:=0, @group:=null) c
  order by `news_category`, id desc, text 
) as x 
where x.row_number <= 2

Ответ по мотивам https://stackoverflow.com/questions/12113699/get-top-n-records-for-each-group-of-grouped-results

READ ALSO
mysql вычитание результатов запроса

mysql вычитание результатов запроса

выполняются 2 запроса

148
просмотреть типы данных в таблице

просмотреть типы данных в таблице

нужно просканировать таблицу на типы полей если поле типа int вывести в один список если varchar в дрогой

160
Как получить родительские категории в Wordpress одним запросом?

Как получить родительские категории в Wordpress одним запросом?

Задача: есть пост WordPress, который принадлежит к категории 1Категория 1 в свою очередь - дочка категории А, а категория А может быть дочерней для...

186
apache server windows 7 изменить параметр mysql ft_min_word_len

apache server windows 7 изменить параметр mysql ft_min_word_len

в файле myini установил ft_min_word_len=3, выполнил REPAIR TABLE my_table QUICK; но в консоли все равно выдает show variables like 'ft_min_word_len'=>4 на форумах пишут добавить параметр...

178