【发布时间】:2017-04-10 22:45:59
【问题描述】:
我正在尝试运行以下查询:
create table MyTable (
TableIndex bigint primary key identity(1,1) not null,
ForeignKey1 int not null,
ForeignKey2 char(16) not null,
fldSomeNumber float(24),
fldScore as cast(case
when fldSomeNumber is null or fldCSIPercentage=0 then 0
when fldSomeNumber <= 0.09 then (select fldTenthScore from tblScores where ScorePrimaryKey=MyTable.ForeignKey2)
when fldSomeNumber <= 0.9 then (select fld1Score from tblScores where ScorePrimaryKey=MyTable.ForeignKey2)
...
else 100 end as float(24))
);
但我不断收到以下错误:“在此上下文中不允许子查询。只允许标量表达式。”不能将子选择放在这样的计算列中吗?
我正在运行 SQL Server Express 2016。
【问题讨论】:
标签: sql-server