Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Некорректный подсчет строк (Андрей) 12/09/2013 - 11:16:10
      Re: Да вообще ничего не понять (Akina) 12/09/2013 - 14:08:05

> Original message text:
> From: Андрей - 12/09/2013 - 11:16:10
> Subject:Некорректный подсчет строк
> -----------------
> Добрый день! ломаю голову, не могу понять в чем проблема, есть запрос fetchAll
>
>
> SELECT
> a.id,
> a.logo,
> a.name,
> a.phone,
> a.address,
> a.site,
> a.date,
> b.name AS city,
> c.name AS region,
> d.name AS country,
> COUNT(e.id) AS adscount
> FROM
> com a
> LEFT JOIN city b ON a.city = b.id
> LEFT JOIN region c ON b.region_id = c.id
> LEFT JOIN country d ON b.country_id = d.id
> LEFT JOIN ads e ON a.id = e.com AND e.approve = '1' AND e.status = '1'
> WHERE
> a.approve = '1'
> AND
> a.is_cat = '1'
> AND
> a.block = '0'
> GROUP BY a.id
> ORDER BY a.id DESC
> LIMIT 0,10
>
> и делаю второй запрос для подсчета строк fetchRow
>
> SELECT
> COUNT(a.id) as count
> FROM
> com a
> LEFT JOIN city b ON a.city = b.id
> LEFT JOIN region c ON b.region_id = c.id
> LEFT JOIN country d ON b.country_id = d.id
> LEFT JOIN ads e ON a.id = e.com AND e.approve = '1' AND e.status = '1'
> WHERE
> a.approve = '1'
> AND
> a.is_cat = '1'
> AND
> a.block = '0'
> GROUP BY a.id
> ORDER BY a.id DESC
>
> дак вот в последнем выводится значение adscount первой компании, сообразить просто не могу, конечно можно убрать лишние джойны и все будет работать, но в данном контексте хотелось бы
>
>
>


From: Akina - 12/09/2013 - 14:08:05
Subject:Да вообще ничего не понять
-----------------
> в последнем выводится значение adscount первой компании

В последнем (втором) запросе выводится только COUNT(a.id) as count, соответственно никакого adscount - ни первой компании, ни последней, ни ещё какой,- не выводится.

Кстати, втором запросе все четыре LEFT JOIN вместе с правыми таблицами можете смело удалить - они неспособны изменить результат, а работы серверу добавляют (мася туповат, и вряд ли сам их выбросит).

И - поле id в таблице com случайно не является ли первичным ключом?



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
42872



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |