-2

我正在查看这个问题/答案 Get latest date before date value in row 我想我会试一试,但每次我尝试“外部应用”

I get an error:  Incorrect syntax near ')'.

在我的查询中,我的“来自”语句并不像问答中的示例那么简单。我的“来自”有多个连接,然后在连接的每一端我都在尝试这个:

outer apply
(
SELECT top 1 * 
    from <mytable>
    where <mytable.column> in ('1','3')
)

非常感谢任何其他帮助我正在使用 SQLserver 2008 R2

4

2 回答 2

0

我实际上会做类似以下的事情

select ColumnsFromTableAYouCareAbout, max(b.datecolumn) as lastdate from mytable a
inner join mytable b on b.datecolumn < a.datecolumn
group by ColumnsFromTableAYouCareAbout 
于 2014-10-10T16:07:57.677 回答
0

确保为外部应用设置别名。我不知道为什么 SQL Server 总是对这个错误没有帮助。

outer apply
(
SELECT top 1 * 
    from <mytable>
    where <mytable.column> in ('1','3')
) AS obligatory_alias
于 2013-10-10T21:25:24.800 回答