Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建TSQL查询以生成报告_Sql_Sql Server_Tsql - Fatal编程技术网

创建TSQL查询以生成报告

创建TSQL查询以生成报告,sql,sql-server,tsql,Sql,Sql Server,Tsql,我正在根据数据库中存储的数据创建报告;只是有点粘在下一块上面 这是我的结构图 这份报告每周五发表一次。它从表中获取自上次报告以来最近7天内的所有记录 我需要添加到我的查询中的一部分是当前年度奖励价值总和超过75美元的get me记录 我有它拉我的记录的时间框架自上次报告,但需要包括其他的一块 我如何才能做到这一点?为此,您需要在下一次的组查询之后添加 SELECT A,B,C, SUM(D) FROM TABLE GROUP BY A,B,C HAVING sum(awardValue) >

我正在根据数据库中存储的数据创建报告;只是有点粘在下一块上面

这是我的结构图

这份报告每周五发表一次。它从表中获取自上次报告以来最近7天内的所有记录

我需要添加到我的查询中的一部分是当前年度奖励价值总和超过75美元的get me记录

我有它拉我的记录的时间框架自上次报告,但需要包括其他的一块


我如何才能做到这一点?

为此,您需要在下一次的组查询之后添加

SELECT A,B,C, SUM(D)
FROM TABLE
GROUP BY A,B,C
HAVING sum(awardValue) > 75

假设您在计算金额时不关心奖励状态-

Select Main.*
from main
INNER JOIN(
SELECt EMPLOYEE,SUM(AWARDVALUE) SUM
FROM MAIN
WHERE YEAR(AWARDDATE) = YEAR(GetDate())
GROUP BY EMPLOYEE
HAVING SUM(AWARDVALUE)>75) EMPLIMIT
    ON Main.EMPLOYEE = EMPLIMIT.EMPLOYEE
Where awardStatus = '1' AND awardDate BETWEEN GetDate() - 7 AND GetDate()
修改了查询,以使用结果和TaxIt列拉入总和

Select Main.*,EmployeeSum, 
CASE WHEN EmployeeSum>75 THEN 'Yes' ELSE 'No' END AS TaxIt
from main
INNER JOIN(
SELECt EMPLOYEE,SUM(AWARDVALUE) EmployeeSum
FROM MAIN
WHERE YEAR(AWARDDATE) = YEAR(GetDate())
GROUP BY EMPLOYEE) EMPLIMIT
    ON Main.EMPLOYEE = EMPLIMIT.EMPLOYEE
Where awardStatus = '1' AND awardDate BETWEEN GetDate() - 7 AND GetDate()

sumawardValue基于什么分组?员工?是的,员工栏-抱歉忘了加上这似乎是在工作-重复的员工栏必须在最后吗?这个表已经包含了这个,但是如果需要的话,我会留下iTunes更新的查询来获得你需要的。同时也对你的日期比较做了一些调整。太棒了,我真的很感激:我知道这是原来的帖子,但我意识到我犯了一个错误。我需要像现在这样从WHERE子句中提取所有数据,求和部分只需要是表中的另一列。当此报告发送到工资单时,如果金额大于75,我们需要表明需要对其征税。因此,如果我们可以将总和作为一列相加,然后如果总和大于75,则添加一个名为TaxIt的列,该列的值为“是”,该年所有小于75的值均为“否”