如何在导入的表上运行并将每一行作为参数传递到查询(SQL Server)



我有一个我加载到DB(不使用SSIS(的CSV文件,其中约20行和3列(如下(:


**start_date_local**    **end_date_local**     **provider_unit**
  18/04/2017 16:00      19/04/2017 16:00         501638-52973
  19/04/2017 05:30      19/04/2017 23:00         501613-52345
  07/04/2017 14:30      08/04/2017 15:30         201447-20266

每个行/记录应充当我的查询(SQL Server(中的参数,该参数构成以下" where"子句

((Transmission.Transmission_StartDateAccurate >= '**start_date_local**')
 AND (Transmission.Transmission_EndDateAccurate <= **'end_date_local'**))
AND Units.sn LIKE **'provider_unit'**  

我想在结果设置使用数据(在另一个表中,这是可以的(在其特定时间 - 如下:

start_date_local    end_date_local  provider_unit   GB USAGE
18/04/2017 16:00    19/04/2017 16:00    501638-52973    35.3
19/04/2017 05:30    19/04/2017 23:00    501613-52345    42.4
07/04/2017 14:30    08/04/2017 15:30    201447-20266    4.5

请建议:(

谢谢Guy

如果将此数据加载到数据库中的登台表中,则可以将join加载到其上,以基于集合的方式使用数据,这将在所有情况下返回您的数据集。

没有完整的模式,这有点猜测工作,但是您应该做这样的事情:

select s.start_date_local
        ,s.end_date_local
        ,s.provider_unit
        ,t.GBUsage
from Transmission t
    join StagingTable s
        on(t.Transmission_StartDateAccurate >= s.start_date_local
            and t.Transmission_EndDateAccurate <= s.end_date_local
            )
    join Units u
        on(u.sn like s.provider_unit);

相关内容

  • 没有找到相关文章

最新更新