| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Составление SQL-запросов > обращение к возвращаемому занчению MySQL 5 |
| Автор: azam 26.8.2008, 16:42 |
| MySQL 5 Мне нужно подставить значение которое возвращается темно-синим кодом в места помеченные красным кодом. Что-то слышал про то что к возвращаемому значению обращаться нельзя. Но точно не знаю так ли это Как можно обратиться к rating-у? или все-таки надо повторить темно-синий код в местах помеченных красным цветом? SELECT l.x, m.x1, m.x2, m.x3, m.x4, m.x5, m.x6, m.x7, m.x8, m.x9, m.x10, m.x11, m.x12, m.x13, ( SELECT (res.vr_count/SUM(ips.vi_count)) FROM sb_vote_results as res, sb_vote_ips as ips WHERE res.vr_el_id=m.ssr_id AND ips.vi_vr_ids=vote.vr_id GROUP BY ips.vi_vr_ids ) AS rating FROM tt m, sb_catlinks l, sb_categs c, sb_vote_results AS vote WHERE c.cat_id IN (804) AND c.cat_id = l.link_cat_id AND l.link_el_id = m.ssr_id AND m.ssr_status =0 AND m.ssr_show =1 AND vote.vr_plugin = "pl_services" AND vote.vr_el_id = m.ssr_id AND rating > 0 AND rating < 2 GROUP BY m.ssr_id ORDER BY c.cat_left |
| Автор: Бонифаций 26.8.2008, 17:11 |
| использовать алиасы в WHERE не позволяет стандарт sql. Алиасы можно использовать в GROUP BY, ORDER BY, или HAVING. |
| Автор: skyboy 26.8.2008, 17:49 |
| вынеси подзапрос из списка полей. сделай к этому подзапросу join. Добавлено через 1 минуту а что в логике запроса мешает вынести таблицы из подзапроса в left join? |
| Автор: azam 27.8.2008, 09:47 | ||
Что-то у меня не совсем получается. Можно пример как это должно быть. |
| Автор: azam 27.8.2008, 11:47 | ||||
Получилость что-то вроде этого, но все равно не могу избавиться от подзапросов в WHERE. Можно как-нибудь это сделать??????
|