из вашего данного запроса,
(
select max(cust_lname), max(cust_time)
--there is another code here for some calculations
from
(
select lname cust_lname, time cust_time
--there is another code here for some calculations
from
(
select c.cust_id
--there is another code here for some calculations to return the cust_lname and cust_time
from
customer c
where cust_g = 'MALE'
AND cust_id = --in the original code, this is a parameter. i want this to read the value from the main query
)
)
)fav
- это запрос в таблице (извлеченные записи служат данными таблицы1)
другая используемая таблица -
customer_table ct
и, согласно вашему коду, это похоже на объединение table1 (fav) со второй таблицей, но оно недоступно в подзапросе.
рассмотрим это ... фрагмент кода, используемый только для table1 ....откуда он будет получать ct.cust_id ???если таблица ct не находится в подзапросе, это приведет к ошибке неверного идентификатора.
согласно вашему заданному коду, вы пытаетесь получить значение fav.cust_lname, fav.cust_time, которые являются значениями из подзапроса, путем объединения с cust_idиз внешнего стола клиента.если это требование, то оно может быть записано как
select (subquery with join from ct table) from customer_table ct
, если вы хотите использовать соединение в самом запросе в таблице
select column1, column2 from (select ....cust_id... from customer_table ctin ...)fav, customer_table ct where...
что-то вроде этого должно бытьвыполнено, т. е. эта соединительная таблица должна вызываться в запросе в таблице со ссылкой на этот столбец
. Главное, что вы использовали запрос в таблице с соединением с внешней таблицей, который недоступен во внутренней таблице.запрос таблицы, либо переключитесь на подзапрос, либо добавьте внешнюю таблицу в запрос таблицы