出于某种原因,该行的年份和月份:
(SELECT DENSE_RANK() OVER (ORDER BY [YEAR], [MONTH]), [YEAR] , [MONTH])
突出显示并说“无效列”。
我做错什么了吗? “ yearclass”包含这两个列。当我从from中删除嵌套的select并键入from [dbo].[yearclass]
时,它起作用了,因此我认为我的嵌套函数有问题。
INSERT INTO [dbo].[Time]
SELECT
DENSE_RANK() OVER (ORDER BY [YEAR], [MONTH]),
[YEAR], [MONTH]
FROM
(SELECT DISTINCT [YEAR], [MONTH]
FROM [dbo].[yearclass]));
答案 0 :(得分:1)
我认为正确的条款应该是:
log("Something");
log("Another line");
您给我们的查询中有两个sintax错误:
最良好的祝愿。
答案 1 :(得分:1)
该错误的原因是,您在子查询中没有FROM子句。下面的代码在MSSQL Server中工作正常。
CREATE TABLE #YearMonth
(
yearvalue int,
monthvalue int
)
INSERT INTO #YearMonth
values(2018,1), (2017,1),(2016,1), (2018,1);
SELECT DENSE_RANK() OVER (ORDER BY Yearvalue,Monthvalue), yearvalue, monthvalue from #YearMonth