【发布时间】:2015-12-24 21:46:07
【问题描述】:
使用 SQL Server 2012
我已经看到了一些关于这个主题的主题,但我找不到一个涉及查询中的多个连接的主题。我无法在此数据库上创建 VIEW,因此需要连接。
查询
SELECT
p.Price
,s.Type
,s.Symbol
, MAX(d.Date) Maxed
FROM AdventDW.dbo.FactPrices p
INNER JOIN dbo.DimSecurityMaster s
ON s.SecurityID = p.SecurityID
INNER JOIN dbo.DimDateTime d
ON
p.DateTimeKey = d.DateTimeKey
GROUP BY p.Price ,
s.Type ,
s.Symbol
ORDER BY s.Symbol
查询有效,但不会产生不同的结果。我正在使用 Order by 来验证结果,但是一旦我让它工作就不需要它了。 I 结果集如下所示。
Price Type Symbol Maxed
10.57 bfus *bbkd 3/31/1989
10.77 bfus *bbkd 2/28/1990
100.74049 cbus 001397AA6 8/2/2005
100.8161 cbus 001397AA6 7/21/2005
我想要的结果集是
Price Type Symbol Maxed
10.77 bfus *bbkd 2/28/1990
100.74049 cbus 001397AA6 8/2/2005
这是我尝试过的其他一些 StackOverflow 线程,但无法处理我的特定查询
How can I SELECT rows with MAX(Column value), DISTINCT by another column in SQL?
SQL Selecting distinct rows from multiple columns based on max value in one column
【问题讨论】:
标签: sql sql-server max