我对SQL缺乏经验,所以我的措辞可能完全错误.如果有人可以重新解释我的问题,我认为谷歌很容易.使用Ms-SQL Server 2008.
我有一个表,我用以下列记录导入:
importId
date
filename
Run Code Online (Sandbox Code Playgroud)
在我的其他表中,我每天导入三个不同的表.这些可以通过文件名识别(例如contracts_20170105.csv,accounts_20170105.csv,...),我每天只有一种文件.
我想要的结果如下:
date importId_contracts importId_accounts
Run Code Online (Sandbox Code Playgroud)
我可以通过使用单独识别每个
SELECT
importId
FROM
imports
WHERE
CONVERT(DATE, date) = '2017-01-05' AND
SUBSTRING(import.filename, 1, 5) = 'Accou'
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将结果合并到上述形式中.
如何在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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |