我正在为访问数据库创建sql select查询,并收到循环引用错误,因为我的别名与表达式中的列名相同。这是我的查询片段:
switch([CULET]='N','NONE', [CULET]='S', 'SMALL',[CULET]='VS','VERY SMALL', [CULET]='SL',' ',[CULET]='MD',' ') AS [Culet]
此特定别名是输出要求的一部分。有没有办法在不改变别名的情况下解决这个问题?
TIA
答案 0 :(得分:12)
将表名/别名添加到字段中。像
这样的东西Switch([Table1.CULET]='N','NONE',[Table1.CULET]='S','SMALL',[Table1.CULET]='VS','VERY SMALL',[Table1.CULET]='SL',' ',[Table1.CULET]='MD',' ') AS Culet
答案 1 :(得分:0)
有时,当循环引用实际位于用作您正在处理的查询的基础的查询之一时,可能会发生此错误(即使基础查询实际上不会引发任何错误本身!)例如,您应该按照recommendations in Microsoft's KB (knowledge-base) article 97526进行基础查询。