SELECT logcount, logUserID, maxlogtm
, DATEDIFF(day, maxlogtm, GETDATE()) AS daysdiff
FROM statslogsummary
WHERE daysdiff > 120
Run Code Online (Sandbox Code Playgroud)
我明白了
"无效的列名称daysdiff".
Maxlogtm是一个日期时间字段.这是让我疯狂的小东西.
我们如何过滤别名?例如,在下面的查询中,对于别名 OLB,如果我们想说 WHERE OLB > 0
SELECT
loan.lnr
,loan.lamount - SUM (memrepay.mprinc) AS OLB
,lstatus
FROM
loan
LEFT OUTER JOIN memrepay
ON loan.lnr = memrepay.lnr
WHERE
loan.tstart >= N'2013-07-07T14:00:00'
GROUP BY loan.lnr, lamount, lstatus
Order By lnr
Run Code Online (Sandbox Code Playgroud) 我从我的SQL Server收到此错误消息:
列名称'价格'无效
在Microsoft SQL Server Management Studio中.
我的SQL语句:
SELECT
CASE
WHEN salePriceDate BETWEEN salePriceStartDate AND salePriceEndDate
THEN salePrice
ELSE
CASE
WHEN salePriceDate2 BETWEEN salePriceStartDate2 AND salePriceEndDate2
THEN salePrice2
ELSE normalPrice
END
END AS price
FROM
prices
WHERE
price BETWEEN 1 AND 100
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?