MYSQL: выборка из таблицы, имя которой находится в другой таблице
Нужно выполнить примерно следующий запрос:
select * from (SELECT `tableName`) s
MySql ругается: "Unknown column `tableName` in `field list`"
Реально выполнить такой трюк на MySql?
Цитата: GHopper
Реально выполнить такой трюк на MySql?
К чему такие извращения?
Выполняем запрос в два этапа. Сперва клиент узнает таблицу, по которой выполнять запрос, затем формирует его, основываясь на полученном имени таблицы.
Для меня более предпочтительна "извращенная форма" - проще написать один большой запрос и работать с его результатом, чем делать несколько циклов с маленькими запросами и потом отлавливать ошибки.
Так все-таки по вопросу - кто-нибудь в курсе как добиться нужного результата на MySql-сервере или это пока не реально?
Цитата: GHopper
Зачем тогда вообще вложенные запросы?! Давайте их не будем использовать, не будем использовать объединения, а вместо этого тупо разбивать на просыте запросы и выполнять их по очереди...
Конечно конечно... Принцип "разделяй и властвуй" ни к черту нам не сдался, KISS тудаже, тем более, как подсказывает мне джедайская сила (привет ~Archimed~!) в данном клиническом случае подругому никак.
З.Ы. Вы когда-нибудь пробовали разобрать чужой многоэтажный запрос? Я свои-то с трудом понимаю через полгодика...
Короче, это вопрос отдельной темы и каждый выбирает то, что удобнее ему. Для каждой задачи выбирается свой способ, не нужно зацикливаться.
А вот мой основной вопрос остается открытым... Кто в курсе?
[SIZE=1]
Цитата: GHopper
а вы когда-нибудь пробывали изменить структуру БД и потом искать все запросы в коде?!
Ну, я как бэээ не пишу запросы в коде :D[/SIZE]
неужели никто не знает?!
хотя все равно придется знать заранее имена всех таблиц