[英]"Invalid column name" ORDER BY
当我运行查询时,我收到以下消息:
Invalid column name 'column1'
询问:
SELECT TOP 1 * From (
(select Top 2 convert(datetime,column1,101) AS TEST from table1 ORDER BY column1 DESC) X
ORDER BY column1)
也许最简单的方法是将转换移出子查询:
SELECT TOP 1 convert(datetime, column1, 101) as test
From (select Top 2 t.*
from table1
order by column1 desc
) X
ORDER BY column1;
或者,如果您的数据库支持它,请使用 ANSI 标准FETCH
/ OFFSET
:
select convert(datetime, column1, 101) as test
from table1
order by column1 desc
offset 1 row
fetch first 1 row only;
SELECT TOP 1 TEST
From (
SELECT Top 2
convert(datetime,column1,101) AS TEST,
column1 // <- include column1
FROM table1
ORDER BY column1 DESC
) X
ORDER BY column1 ASC
将 'convert(datetime,column1,101) AS TEST' 更改为 'convert(datetime,column1,101) AS column1'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.