2015-05-14 2 views
0

Я знаю, что это основная вещь, но SQL является серьезным слабым местом моего ...Два связанных запросы должны быть один

У меня есть следующий запрос («Query1»)

select 
    SC.statues, SC_some_real_code 
from 
    [corpdb_gs].[dbo].[Simple_Codes] SC 
inner join 
    [corpdb_gs].[dbo].[real_simple_essentials] RSE 
on 
    SC.statues = RSE.se_statutes 
AND 
    SC.some_real_code = RSE.se_statutes_reason 

Мне нужно возвращать только строки в таблице [db2].[dbo].[statusYo] где

statusYo.code = "query1".SC.statues 
AND 
    statusYo.reason = "query1".SC.some_real_code 

Помощь?

+0

Вы упоминаете два запроса в названии и есть только один запрос в пост? Где другой запрос? – Ram

ответ

1
select * from [db2].[dbo].[statusYo] query2 
    inner join 
    (select 
     SC.statues as statues , SC.some_real_code as some_real_code 
    from 
     [corpdb_gs].[dbo].[Simple_Codes] SC 
    inner join 
     [corpdb_gs].[dbo].[real_simple_essentials] RSE 
    on 
     SC.statues = RSE.se_statutes 
    AND 
     SC.some_real_code = RSE.se_statutes_reason) query1 
on query1.statues =query2.code 
and query1.some_real_code=query2.reason 

это будет работать для вас ......

+0

Это близко. Я закончил тем, что понял это буквально 2 минуты назад и вернулся ... В [Select * from ...] требуется FROM, а затем INNER JOIN. По крайней мере, это для меня, но это в остальном идентично тому, что я придумал. Благодаря! – MetalPhoenix

Смежные вопросы