|
|
|
| Уважаемые гуру :)
Помогите с решением проблемы, есть запрос на хостинге выполняется на ура, на локаольной машине (denwer 3) тупит.
"SELECT * FROM ?_adv_banners a
WHERE
a.date_start < ".time()." and a.date_finish > ".time()."
and a.status = 1
and a.type='".$type."'
and (
(SELECT COUNT(*)
FROM ?_adv_banners_rights b
WHERE
b.banner = a.id
and b.type='page'
and b.value='".$this->page->config['id']."'
) > 0
or
(SELECT COUNT(*)
FROM ?_adv_groups b
RIGHT JOIN ?_adv_banners_groups c ON c.banner=a.id
WHERE
(SELECT COUNT(*)
FROM ?_adv_groups_rights d
WHERE
d.group = b.id
and d.type='page'
and d.value='".$this->page->config['id']."'
) > 0
) > 0
)
"
|
Ошибка - Unknown column 'a.id' in 'on clause'
если же подставить заместо a.id - id какого-то объекта, например "3" то всё работает... | |
|
|
|
|
|
|
|
для: alexx
(11.08.2009 в 14:15)
| |
?_adv_groups b
RIGHT JOIN ?_adv_banners_groups c ON c.banner=a.id
|
И как прикажете это вычислять? | |
|
|
|
|
|
|
|
для: Trianon
(11.08.2009 в 14:20)
| | А что не так?
?_adv_group - ?_ - это префикс в названиях таблиц :)
|
| |
|
|
|
|
|
|
|
для: Alexx
(17.08.2009 в 14:29)
| | название таблицы есть имя файла
всё так!!! :-D | |
|
|
|
|
|
|
|
для: Alexx
(17.08.2009 в 14:29)
| | дело не в ?_.
> ?_adv_groups b RIGHT JOIN ?_adv_banners_groups c ON c.banner=a.id
Дело в ссылке на алиас(или таблицу) a. , в данном табличном выражении ( b RIGHT JOIN c ) - неопределенную.
И более того, даже не столько в этом.
Дело в том, что условие присоединения таблицы b никак не зависит от полей строк этой таблицы. | |
|
|
|
|
|
|
|
для: Trianon
(17.08.2009 в 16:47)
| | конечно. а уж как в виндузе файлы типа ?_… создаются — дивно на заглядение… | |
|
|
|
|
|
|
|
для: x64
(17.08.2009 в 17:05)
| | проблемы негров шерифа не волнуют :)) | |
|
|
|
|
|
|
|
для: x64
(17.08.2009 в 17:05)
| | думаю у автора префикс не ?, а что-то другое - это он так здесь написал.
иначе как было бы
>>если же подставить заместо a.id - id какого-то объекта, например "3" то всё работает...
?
upd
кстати, а разве в запросе автора нельзя заменить селект каунты на join`ы? | |
|
|
|