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




MySQL.RU - Webboard



Вернуться
Непонятки с Unknown column 'ххх' in 'where c (Xenar) 09/11/2012 - 21:28:10
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 11/11/2012 - 21:17:42
      Re: Непонятки с Unknown column 'ххх' in 'where c (Xenar) 11/11/2012 - 21:59:02
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 11/11/2012 - 22:04:31
      Re: Непонятки с Unknown column 'ххх' in 'where c (xenar) 11/11/2012 - 22:07:03
      Re: Непонятки с Unknown column 'ххх' in 'where c (xenar) 11/11/2012 - 22:10:15
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 11/11/2012 - 23:27:28
      Re: Непонятки с Unknown column 'ххх' in 'where c (xenar) 13/11/2012 - 10:40:00
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 13/11/2012 - 12:20:25
      Re: Непонятки с Unknown column 'ххх' in 'where c (xenar) 13/11/2012 - 13:47:17
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 13/11/2012 - 14:26:07
      Re: Непонятки с Unknown column 'ххх' in 'where c (xenar) 13/11/2012 - 14:58:39
      Re: Непонятки с Unknown column 'ххх' in 'where c (Akina) 13/11/2012 - 16:28:09
      Re: Непонятки с Unknown column 'ххх' in 'where c (Xenar) 13/11/2012 - 18:34:37

> Original message text:
> From: Xenar - 09/11/2012 - 21:28:10
> Subject:Непонятки с Unknown column 'ххх' in 'where c
> -----------------
> Доброго времени суток.
> Столкнулся с такой проблемой. Есть у меня рабочий запрос такого вида:
> SELECT o.*,
>
> (o.ostatok+o.vneseno-o.zabrano-(SELECT COALESCE(SUM(summa_zaima),0) from zaim WHERE zaim.start_data=o.date AND zaim.n_point=o.point)+(SELECT COALESCE(SUM(summa_vznosa),0) FROM vznos WHERE vznos.data_time = o.date AND vznos.n_point=o.point)) AS kassa,
> ............
> (SELECT COUNT(*) FROM zaim za WHERE (SELECT COUNT(*) FROM zaim z1 WHERE z1.id_clienta=za.id_clienta) = "1" AND za.start_data = o.date AND za.n_point=o.point) AS new_client
> ............
> FROM otchet o
> WHERE o.point = "1" AND o.date LIKE "2012-09-%" ORDER BY o.date;
>
> Все исправно считает по мере необходимости добавляю в него новые подзапросы и сегодня при добавлении нового подзапроса:
> (SELECT SUM( if(t2.ostatok_baza<t1.summa_zaima,t2.ostatok_baza,t1.summa_zaima))
> FROM (SELECT id_zaim,summa_zaima FROM zaim WHERE start_data <= o.date AND n_point="1" AND (real_end_data > o.date OR real_end_data = "0000-00-00")) as t1
> LEFT JOIN (SELECT zaim.id_zaim, MIN(vznos.ostatok_baza) AS ostatok_baza FROM vznos,zaim WHERE vznos.data_time <= o.date AND vznos.ostatok_baza <> "0" AND vznos.id_zaim=zaim.id_zaim AND (zaim.real_end_data >= o.date OR zaim.real_end_data = "0000-00-00") GROUP BY vznos.id_zaim) as t2 on t1.id_zaim = t2.id_zaim) as portvel
>
> получаю ошибку: Unknown column 'o.date' in 'where clause'
>
> Как так ? Предыдущие подзапросы прекрасно видели внешнюю колонку
> o.date а этот не видит. Чего я не догоняю ???
> Прошу совета.
>


From: xenar - 13/11/2012 - 10:40:00
Subject:Непонятки с Unknown column 'ххх' in 'where c
-----------------
Прошу еще совета.
Переписал подзапрос в виде:

SELECT t2.id_zaim,t2.start_data,t2.summa_zaima,t3.id_zaim,t3.ostatok_baza,t3.data_time

FROM zaim AS t2
LEFT JOIN vznos as t3 ON t2.id_zaim = t3.id_zaim
AND t3.data_time = t2.start_data

WHERE
t2.start_data BETWEEN '2012-05-01' AND '2012-05-15'
AND (t2.real_end_data > "2012-05-15" OR t2.real_end_data = "0000-00-00") GROUP BY t2.id_zaim;

И в полученном результате в LEFT JOIN части таблицы получаю полность пустую поля.
Если же делать
LEFT JOIN vznos as t3 ON t2.id_zaim = t3.id_zaim
AND t3.data_time <= "2012-05-15"
То все правильно выводится.
Я рассуждаю так что делая
LEFT JOIN vznos as t3 ON t2.id_zaim = t3.id_zaim
AND t3.data_time = t2.start_data
я беру значения из указанного диапазона в WWHERE t2.start_data BETWEEN '2012-05-01' AND '2012-05-15'
Но что то не так выходит





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

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

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



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