Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как сортировать данные из базы Mysql?

Как сортировать данные из базы Mysql?


     05.03.2017    Общие вопросы, MySQL    1179

вопрос
Этот код выводит информацию из дополнительного поля label, из всех новостей.
Как подсчитать одинаковые поля и не выводить не заполненные?

Должно получится примерно так:

Vision - 50 треков
Spinnin - 35 треков
Sony - 20 треков

if (!$r_mlabel) {
$sql = $db->query("SELECT * FROM " . PREFIX . "_post ORDER BY id DESC LIMIT 0,{$limit}");
while ($row = $db->get_row($sql)) {
$xfieldsdata = xfieldsdataload($row['xfields']);
$r_mlabel .= "<p>{$xfieldsdata['label']}</p>";
}

Ответа пока нет


10 комментариев

UsurpatorVaticana
Юзер

UsurpatorVaticana - 5 марта 2017 22:39 -

гуглите оператор GROUP BY
проверить не пустые ли поля тоже гугл даст много ответов, я делаю так if(!нужная переменная) {echo "нужная переменная пуста"}

Kane
Юзер

Kane - 5 марта 2017 23:45 -

Это доп поля, GROUP BY тут не поможет.

stopani
Юзер

stopani - 5 марта 2017 23:50 -

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

nowheremany
Эксперт

nowheremany - 6 марта 2017 00:03 -

SELECT SUBSTRING_INDEX( SUBSTRING_INDEX( p.xfields, 'label|', -1 ) ,  '||', 1 ) as xf_label, count(*) as count
FROM dle_post p
WHERE LOCATE('label|',p.xfields)>0
GROUP BY xf_label

Благодарность принимаю тут Связь

stopani
Юзер

stopani - 6 марта 2017 00:08 -

Вообще ничего не выводит

nowheremany
Эксперт

nowheremany - 6 марта 2017 00:16 -

Значит такого доп поля нет (label)
Этот запрос нужно в phpmyadmin выполнить, если что

Благодарность принимаю тут Связь

stopani
Юзер

stopani - 6 марта 2017 00:19 -

Как нет? Есть. С кодом в вопросе же выводятся, только без группировки и количества, а просто списком всех полей

stopani
Юзер

stopani - 6 марта 2017 00:25 -

А я в php засунул. А что это запрос сделает?

stopani
Юзер

stopani - 6 марта 2017 00:55 -

Допёр, всё работает, спасибо! Вот обязательно с загадкой нужно говорить.

nowheremany
Эксперт

nowheremany - 6 марта 2017 20:38 -

Ну дык, раз пишите GROUP BY - вот вам и запрос, писали бы по другому был вы ответ другой

Благодарность принимаю тут Связь

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх