sql-server - ....不是公认的表格提示选项。....确保您的数据库兼容模式设置为 90。”
问题描述
我在代码中经常出现错误
CustomerSales 不是公认的表提示选项。如果它打算作为表值函数的参数,请确保您的数据库兼容模式设置为 90。
其他几个表也发生了这种情况,例如 Hires、CustomerNumbers 等。
我在谷歌上看到了这个建议,但我不确定这是否是最好的选择?或者首先可能是什么导致了错误?
谁能告知可能导致此类错误的原因和最佳解决方案?
ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = { 150 | 140 | 130 | 120 | 110 | 100 | 90 }
我收到错误的代码示例如下:
WITH CustomerAges AS
(
SELECT
P.FirstName, P.LastName,
FLOOR (DATEDIFF(DAY, PD.BirthDate, GETDATE()) / 365.25) AS AGE
FROM
Sales.vPersonDemographics PD
INNER JOIN
Person.Person P ON P.BusinessEntityID = PD.BusinessEntityID
)
SELECT
*,
CASE
WHEN Age IS NULL THEN 'Unknown Age'
WHEN Age BETWEEN 0 and 17 THEN 'Under 18'
WHEN Age BETWEEN 18 and 24 THEN '18 - 24'
WHEN Age BETWEEN 25 and 34 THEN '25 - 34'
WHEN Age BETWEEN 35 and 49 THEN '35 - 49'
WHEN Age BETWEEN 50 and 64 THEN '50 - 64'
ELSE 'Over 65'
END AS AgeRange
FROM
CustomerAges
解决方案
推荐阅读
- python - 使用python在一个大的sql文件中拆分sql命令
- java - 在循环中将int转换为字符串
- python - 在 python 面向对象的类中解释代码
- php - 是否可以在库存 Alpine 3.12 Docker 映像上安装 PHP7.4?
- r - ggplot2 | 仅为一个变量自定义 geom_point
- python - default_attrs.update(attrs) ValueError: 字典更新序列元素 #0 的长度为 1;2 是必需的
- css - 使用 gtk+3 和 Css 时的问题
- angular - FormArray 在复选框更改事件上显示输入字段的默认值
- spring-boot - 带有“--network host”的 Docker 不允许访问应用程序的端口
- python - 如何通过 doc2vec 嵌入降低聚类的时间复杂度?