Microsoft Access查询 - 根据字段内容将文本转换为数字 - 低,中,高到1,2,3

时间:2014-07-28 12:16:33

标签: sql ms-access text format numeric

我正在寻找一种方法来更改访问查询的输出,以返回1,2或3来替换低,中或高。我想将字段的格式从Text转换为Numeric,因为我希望使用这些数字进行计算。任何想法都将不胜感激。

3 个答案:

答案 0 :(得分:2)

您可以在MS Access中使用iif()

select iif(col = 'High', 3, iif(col = 'Low', 1, 2)) as ColNumeric

答案 1 :(得分:1)

另一种可能性是switch,例如:

SELECT Field1, 
       Switch([field1]="Low",1,[Field1]="Medium",2,[Field1]="High",3) AS SwitchValue
FROM aTable

但是简单地创建一个包含替换值和Join的小​​表可能更方便。

答案 2 :(得分:1)

最佳解决方案是使用数字字段(PK)和文本说明创建表格。像

这样的东西
tblID    |    priorityKey
---------+----------------
1        |    Low
2        |    Medium
3        |    High

然后当你需要它时,你只需加入它们。请注意,这需要在您的表格中更新。您只需运行更新查询即可。

但是如果你现在真的需要它,我会建议你使用IIF。