Solved

how to use Open Query within sub query in sql server

Posted on 2011-03-10
2
1,572 Views
Last Modified: 2012-05-11
Hi,
i am using sql server 2005 and using sub query within an Open Query method to pull some data from other databases but getting an error like this "Incorrect syntax near the keyword 'select'."
i suspect the error has to do where i put the prenthesis in between the open query and the sub query.  here is my code.  Appreciate any kind of help.
select
         parent_id,
         parent_desc,
         contract_id,
         pg.group_desc as Tier_Desc,
         ca.actdate as mdf_date,
         ca.stat,
         volume


from

select * into Dashboard.dbo.test_temp
from openquery(MyDb,'

(SELECT  l.PROV_id,
         l.prov_name,
         tp.parent_id,
         tp.parent_desc,
         lob.lob_id,
         lob.lob_desc,
         l.provider_category_desc,

         max(s.provider_key) provider_key,
         max(s.s_contract_key) s_contract_key,

SUM(Case when S.month_key in (2010307, 2010308, 2010309, 2010410) then S.VOLUME_PAID else 0 end) AS volume

FROM    " bunch of tables here but not icluded in here"

AND      S.MONTH_KEY >= 2010307 and S.MONTH_KEY <= 2011206
GROUP BY 1,2,3,4,5,6) f left outer join

(select lca.provider_key, lca.s_contract_key, lca.price_group_key, lca.activation_date, lca.status
from  osr_price_act_content lca
where lca.provider_key <> 0
group by lca.provider_key, lca.s_contract_key, lca.price_group_key, lca.activation_date, lca.status) ca
                                       on f.provider_key   = ca.provider_key
                                       and f.s_contract_key      = ca.s_contract_key     left outer join
         lookup_price_group pg         on pg.price_group_key    = ca.price_group_key ')

Open in new window

0
Comment
Question by:karinos57
2 Comments
 
LVL 50

Accepted Solution

by:
Lowfatspread earned 500 total points
ID: 35097950
so either copy the openquery data into your table and then use the table within this query

or just reference the openquery...
select
         parent_id,
         parent_desc,
         contract_id,
         pg.group_desc as Tier_Desc,
         ca.actdate as mdf_date,
         ca.stat,
         volume


from 

--select * into Dashboard.dbo.test_temp from
 openquery(MyDb,'

(SELECT  l.PROV_id,
         l.prov_name,
         tp.parent_id,
         tp.parent_desc,
         lob.lob_id,
         lob.lob_desc,
         l.provider_category_desc,

         max(s.provider_key) provider_key,
         max(s.s_contract_key) s_contract_key,

SUM(Case when S.month_key in (2010307, 2010308, 2010309, 2010410) then S.VOLUME_PAID else 0 end) AS volume

FROM    " bunch of tables here but not icluded in here"

AND      S.MONTH_KEY >= 2010307 and S.MONTH_KEY <= 2011206
GROUP BY 1,2,3,4,5,6) f left outer join

(select lca.provider_key, lca.s_contract_key, lca.price_group_key, lca.activation_date, lca.status
from  osr_price_act_content lca
where lca.provider_key <> 0
group by lca.provider_key, lca.s_contract_key, lca.price_group_key, lca.activation_date, lca.status) ca
                                       on f.provider_key   = ca.provider_key
                                       and f.s_contract_key      = ca.s_contract_key     left outer join
         lookup_price_group pg         on pg.price_group_key    = ca.price_group_key ') as X

Open in new window

0
 

Author Comment

by:karinos57
ID: 35098209
thanks for your response but not sure what you have said or did in the query.  can you explain little bit?  thanks
0

Featured Post

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Query Help - MSSQL - Averages 5 30
Have a conversion issue with varchar to int in a SQL: Query. 1 38
average of calculation (TSQL) 4 26
RAISERROR WITH NOWAIT 2 14
SQL Server engine let you use a Windows account or a SQL Server account to connect to a SQL Server instance. This can be configured immediatly during the SQL Server installation or after in the Server Authentication section in the Server properties …
How to leverage one TLS certificate to encrypt Microsoft SQL traffic and Remote Desktop Services, versus creating multiple tickets for the same server.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

791 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question