Задавайте вопросы, мы ответим
Вы не зашли.
Есть запрос, например такого характера
Неактивен
Так и должно быть. Использование групповой функции (в вашем случае count) означает неявную группировку.
Вашему условию where соответствует пустая выборка и теперь вы просите посчитать кол-во строк в ней, в результате возвращается одна строка, в которой информация о кол-ве строк =0 и соответствующем логине, т.е. null так как такого логина нет.
Неактивен
Каким образом тогда выводятся, допустим, комментарии к статьям? А если комментариев пока нет?
Неактивен
Сформулируйте пожалуйста точнее - какие таблицы у Вас есть (названия таблиц, поля) - и какую выборку Вы хотите получить
Неактивен
Давайте, чтобы проще было:
Таблица topics, поле: topic_id
Таблица comments, поля: comment_id, topic
Ну, и мой селект тут не работает:
Неактивен
SELECT такой и не сработает - Вы выбираете скалярное значение в одном столбце и колонку в другом.
В каком виде Вы хотите получить комментарии?
Подозреваю, что SELECT * FROM comment; - это не совсем то, что Вам нужно ?
Если же Вы хотите посчитать количество комментариев к топикам, то скорее так:
SELECT topic,count(*) FROM coments group by topic order by 2 asc;
(Те топики, к которым нет комментариев не будут участвовать в выборке)
Неактивен
Немного запутанно, но судя по всему, нужно использовать силу, т.е. group by. Буду разбираться, спасибо.
Неактивен
Ну, если бы Вы чётче формализовали то, что хотите от запроса получить - глядишь я бы и меньшебукв писал. А что запутанно?
Неактивен
Глядишь, и ваша правда.
Все верно вы догадались, пытаюсь подсчитать комментарии к каждой теме.
А запутан для меня конец запроса:
Неактивен
Это означает, что сортируем по второй колонке по возрастанию, по count(*).
Неактивен
Переписал запрос с group. Все равно выбирает только ненулевые. Есть еще какие-нибудь варианты?
Запрос выглядит, в целом, так (прошу не обращать внимания на вставки, там дополнительные условия):
Отредактированно wine-time (17.01.2012 23:47:28)
Неактивен
Давайте на примере таблиц из 5го поста
Если вы посмотрите результат выполнения запроса:
Неактивен
Спасибо за разъяснения.
Завтра утром постараюсь переписать свой запрос.
Не понимаю сути последнего предложения. Какие поля попадают под это определение?
Неактивен
Неактивен
Ага, вот оно значит что...
Спасибо вам большое. Даже не представляю, сколько времени вы помогли мне спасти )
Неактивен