Создание сайтов и программирование
(OFF) JohnDidact (B) 15 июн 2019

SQL-запрос. Считается ли это извращением?

Вкратце разъясню, что делает запрос:
берёт данные об обсуждениях (постах/темах), его категории...
Подробнее...

Комментарии (45)

Эксперт-продавец Павел агрится на то что его ткнули носом в его некомпетентность? Ну извините.
Меня это тоже напрягает. Но вот это вот discus.cat=n сгенерировано скриптом, так как только скрипт знает, из каких discus.cat нужно всё вытаскивать.
перепиши его. ну скрипт
докинь что то типа этого:
if(cats>=2)
{
echo 'were var in('. foreach($arr_cats) ')';
}
лезть туда можно без страха
Лезть туда уже боюсь.
нууу...
хочешь идти - иди (с) цитата какого то мега цилителя)))
с одним нюансом надо будет разобраться
инфу в студию
-1
агрится
не агрится а дефится объясняет в ленивом режиме, смысл первоначального комментария, но впрочем не суть
на то что его ткнули носом в его некомпетентность
на то что тыкающий не заметил в первоначальном комментарии контекста "я некомпетентен, кто круче, насоветуйте автору бОльших ништяков если не лень"

проще говоря ты моё утверждение "я нуб" прочел как "я профи", что привело к контекстному диалогу вида:
я: я нуб, но вопреки этому могу посоветовать X хотябы на php
ты: но ты на самом деле не профи а нуб раз уж советуешь X на php!!!1
твоя попытка оспорить не обоснована от слова никак, и потому выглядит тоже гхм... никак...)

на всякий случай:
В SQL и без говнаPHP есть "... var IN (1, 2, 3) ..."
я не утверждал обратного
В SQL и без говнаPHP есть "... var IN (1, 2, 3) ..."
опять ты со своей сектой "свидетелей труъкодОвых"...) дайка угадаю, вместо тестов предпочитаешь молитвы на иконку святого эклипса||визуала?)
В SQL и без говнаPHP есть "... var IN (1, 2, 3) ..."
как упоминание о var IN, так и весь комментарий отправлен не автору а мне. и не с целью помощи а с целью гхм... оспорить. всё это на корню противоречит как твоим изначальным понтам, формата "смотрите какие вы все плохие а я хороший". так и контекстному посылу этого же(второго из твоих в рамках данного топика) комментария.
// ты вообще понимаешь насколько забавно это всё выглядит? =)
* Я даже читать это не стал, если что. Зря пыхтел
Я слегка прозрел и понял, что Вы имели ввиду :ура
Вот инфа по этому нюансу :-Д Родителей брать могу, а дочек нить :плак
я тож такие запросы к бд не читаю...хи
афигеть! эта проста неграматна арганизованые таблицы...хи
-1
Лучше?
SELECT
discus.id,discus.pubdate,discus.serial,discus.subject,discus.description,discus.preview,discus.dcid,
discus.uid,discus.author,discus.hidden,discus.closed,discus.archived,
users.nick AS user_nick, users.photo AS user_photo, users.male AS user_male,
estimate.is_like,
(SELECT COUNT(did) FROM discus_estimate WHERE is_like = 1 AND did = discus.id) AS like_count,
(SELECT COUNT(did) FROM discus_estimate WHERE is_like = 0 AND did = discus.id) AS dislike_count,
(SELECT COUNT(discus) FROM discus_com WHERE discus = discus.id AND system IS NULL AND archived IS NULL AND (discus.dcid IN (14,16,17,6,15,20,18,19) OR hidden IS NULL)) AS com_count,
(SELECT MAX(pubdate) FROM discus_com WHERE discus = discus.id AND system IS NULL AND archived IS NULL AND (discus.dcid IN (14,16,17,6,15,20,18,19) OR hidden IS NULL)) AS last_com
FROM discus
LEFT JOIN discus_cat ON discus_cat.id = discus.dcid
LEFT JOIN users ON users.id = discus.uid
LEFT JOIN discus_estimate AS estimate ON estimate.did = discus.id AND estimate.uid = 1
WHERE (discus.dcid IN (0,1,2,7,9,10,11,12,13,8,14,16,17,6,15,20,18,19) AND discus.hidden IS NULL) OR (discus.dcid IN (14,16,17,6,15,20,18,19) AND discus.hidden = '')
GROUP BY discus.id
ORDER BY discus.serial, discus.pubdate DESC
LIMIT 0,10
З.Ы, изменил имена некоторых полей: user_nick на author, user на user_nick, cat на dcid (это если сравнивать с запросом, что в шапке темы кто захочет).
-1
Или (discus.dcid IN (0,1,2,7,9,10,11,12,13,8,14,16,17,6,15,20,18,19) AND discus.hidden IS NULL) OR (discus.dcid IN (14,16,17,6,15,20,18,19) AND discus.hidden = '') тоже как то можно объединить?
-1
Лучше?
по читабельности точно да)
тоже как то можно объединить?
эм... если is null и ='' не отличаются по нужному функционалу то можно дубли с обеих условных частей вынести в третью обязательную, если конечно удастся такую склепать. хотя это уже наверно экономия на спичках будет, которая хз позволит ли вообще хоть 1 символ съэкономить.
а вообще я бы еще
12,13,8,14
вот это вот упорядочил бы) но это уже прям лирика и идеализм чтоли)
// это ж фрэйм... ему пока не напишешь чо то типа "эй нуб, смотри как надо" в сочетании с дичью типа умножения на ноль, фиг чо ответит)
г - гордость) хотя тут и другие слова на эту букву весьма подошли бы)
Показать комментарий
Скрыть комментарий
Для добавления комментариев необходимо авторизоваться
Создание сайтов и программирование
Санта-Барбара
Построй самый большой и красивый мегаполис!
Тема: Светлая | Тёмная
Версия: Mobile | Lite | Touch | Доступно в Google Play