如果此问题的标题不正确,但我不知道如何对其进行说明,请事先致歉。我想要做的是:SQL Server中的三维数组
我想显示这种格式的表格。
week_1 week_2 week_3
sub_account_1 25 calls 35 calls 15 calls
sub_account_2 35 calls 17 calls 13 calls
sub_account_3 26 calls 5 calls 11 calls
我想是这样的:
SELECT count(calls), date, sub_account_name
WHERE master_account = 12
AND date IN ('2017-01-07','2017-01-14','2017-01-21')
GROUP BY sub_account_name, date
这个查询没有显示我想要的东西,而不是被显示:
sub_account_1 week_1 35 calls
sub_account_1 week_2 25 calls
sub_account_1 week_3 17 calls
sub_account_2 week_1 13 calls
sub_account_2 week_2 11 calls
......
......
sub_account_3 week_3 15 calls
我将不胜感激,如果有人可以帮助我如何编写查询以生成所需的表格。
编辑以显示取样数据:
有两个表(计费和呼叫)
Account
ID int
AccountId int
Name varchar(50)
master int
主账户和子账户都是相同的数据类型和存储在同一个表。如果一个账户有accountId = master,这意味着它是一个主账户。其所有子账户将其主账户的accountId值保存为主价值。
Call
ID int
callId int
date datetime
f_accountId int
我需要在以下日期(“2017年1月7日”,“2017年1月14日”,“2017年1月21日”)的格式显示,以上所有的呼叫。
听起来像你需要一个数据透视表,但你需要显示当前的数据示例(即查询前的数据)。 – scsimon
这是一个开始的好地方。 http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/ –