Вложенный запрос Select sql

Доброе время суток.
Помогите разобраться. Запрос типа
select * from (select `report_table` from list_report where `name_report` = 'Минерализация КВ') where date = '2014-10-01'

нужно в запросе в скобочках получить имя `report_table`, что должно быть названием таблицы из которой нужно выбрать все, где дата = 2014-10-01.

СШ
Света Швенк

Странный запрос у вас, на выбору даты из другой таблицы. Структуру базы вам нужно пересматривать.

ОС
Ольга Серебряникова

пока дам ссылку, если не разберешься - дополню
http://www.mysql.ru/docs/man/ANSI_diff_Sub-selects.html

дата то в какой таблице?

ПК
Павел К

Можно, конечно, извратиться как-нибудь так:

SELECT
COALSECE(T1.date, T2.date, T3.date)
FROM
list_report LR
LEFT JOIN table1 T1 on LR.name_report = 'table1'
LEFT JOIN table2 T2 on LR.name_report = 'table2'
LEFT JOIN table3 T3 on LR.name_report = 'table3'
WHERE
LR.name_report = 'Минерализация КВ'
and COALESCE(T1.date, T2.date, T3.date) = '2014-10-01'

Это, конечно, чистый SQL, но очень плохо масштабируемый - при расширении списка доступных таблиц его придется каждый раз переделывать.

Поэтому в данном случае, наверно, будет правильным воспользоваться некой комбинацией PREPARE / EXECUTE:
http : // dev . mysql . com / doc / refman / 5.1 / en / sql-syntax-prepared-statements.html

Похожие вопросы
Объеденный запрос SQL
Как соеденить два запроса в SQL в один?
помогите с sql запросом
Sql запросы. Выборка данных Select.
Ошибка в SQL запросе.
Проблема с SQL запросом.
запрос на объединение SQL
Помогите с запросом по SQL.
в чем разница SQL запроса SELECT в MySQL и в Oracle
SQL запрос, содержащий агрегирующую функцию в конструкции select...