我被困在这里,您的帮助将不胜感激。根据您在下面看到的代码: 我有一些条件的子查询。具体来说,以下内容:
AND OwnedByTeamJ='C - O Review'
AND OwnedByTeamJ is null
我想从子查询中获得结果, 对它们进行另一个选择,因为我要的只是表格中列出的最新日期。如您在图片中看到的,我希望能够提取日期最高的行#3,并且该行的行号为null(我猜!因为那里没有值)。 现在的问题: 1首先,代码起作用了,我看到了所有记录!但是,它没有选择最新日期
2-突然,它停止工作并看到此错误: 选择列表中的“ tt.IncidentID”列无效,因为它既不包含在聚合函数中也不在GROUP BY子句中。
select
distinct max(LastModifiedDateTimeJ),
incidentID,
EffecRequestStatus,
OwnedByTeamJ
From (
select
EffecRequestStatus,
IncidentID,
LastModifiedDateTimeJ,
OwnedByTeamJ,
DetailsJ,
Status,
OwnedByTeam
from IncidentView
where
CAST(CreatedDateTime as DATE) >='05-01-2019'
AND JournalTypeName like '%Journal - Note%'
AND OwnedByTeamJ='C - O Review'
AND OwnedByTeamJ is null
group by
EffecRequestStatus,
IncidentID,
LastModifiedDateTimeJ,
OwnedByTeamJ,
DetailsJ,
Status,
OwnedByTeam
) as tt
where
tt. RequestStatus not in ('Submission','P-C submission','C Review')
数据示例如下所示,但我的表中的列比此处列出的要多:
答案 0 :(得分:0)
如果您希望得到不为空的结果,请尝试以下操作:
CITY STATE ZIP
------------- ----- -----
GRANADA HILLS CA 91344
SIMI VALLEY CA 93065
BUENA PARK CA 90621
SHERMAN OAKS CA 91423
GLENDALE CA 91203
VENTURA CA 93002
HAWTHORNE CA 90250
PASADENA CA 91185
...
答案 1 :(得分:0)
1)这些条件不应共存:
AND OwnedByTeamJ='C - O Review'
AND OwnedByTeamJ is null
...因为这两件事永远不会同时发生,所以您将得到一个空结果集。我想你想要的是
AND (OwnedByTeamJ='C - O Review' or OwnedByTeamJ is null)
2)您提到的错误似乎与您向我们显示的查询不一致。您是否尝试过在外部制作另一个group by
?
3)将distinct
与max
,sum
,count
等任何聚合函数一起使用是没有意义的。
4)只要在group by
中包含EffecRequestStatus,您将得到3行,而不是1行,因为所有3行的EffecRequestStatus值都不同。如果您只想查看一行,则必须将其从group by
中删除,因此也要从select
中删除。