我对SQL缺乏经验,所以我的措辞可能完全错误.如果有人可以重新解释我的问题,我认为谷歌很容易.使用Ms-SQL Server 2008.
我有一个表,我用以下列记录导入:
importId date filename
在我的其他表中,我每天导入三个不同的表.这些可以通过文件名识别(例如contracts_20170105.csv,accounts_20170105.csv,...),我每天只有一种文件.
我想要的结果如下:
date importId_contracts importId_accounts
我可以通过使用单独识别每个
SELECT importId FROM imports WHERE CONVERT(DATE, date) = '2017-01-05' AND SUBSTRING(import.filename, 1, 5) = 'Accou'
但我不知道如何将结果合并到上述形式中.
如何在SQL"俚语"中调用它?
谢谢!
如果每天每种类型只有1个文件,这将有效:
select date, max(case when filename like 'contracts%' then importId end) as importId_contracts max(case when filename like 'accounts%' then importId end) as importId_accounts from Imports where date = '2017-01-05' group by date