我正在使用MS Access SQL编写查询,而MS Access无法识别我的查询。
所以我想要这样的东西:
If salutation = 1 Then
salutation ='Mr'
ElseIf salutaion = 2 Then
salutaion ='Mme'
ElseIf salutaion = 3 Then
Salutation = 'Mlle'
Else
Salution = 'ND'
然后我输入以下查询:
CASE WHEN (BN_CS_MP_MASTERPROFILE.CMP_SALUTATION='1') THEN 'Mr'
WHEN (BN_CS_MP_MASTERPROFILE.CMP_SALUTATION='2') THEN 'Mme'
WHEN (BN_CS_MP_MASTERPROFILE.CMP_SALUTATION='3') THEN 'Mlle'
ELSE 'ND' END
任何帮助都将受到欢迎!
答案 0 :(得分:1)
您还可以通过以下方式使用Choose
函数:
/{entity}/{property}
答案 1 :(得分:0)
使用switch
:
SWITCH(BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = '1', 'Mr',
BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = '2', 'Mme',
BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = '3', 'Mlle'
1=1, 'ND'
)
注意:如果将CMP_SALUTATION
声明为任何类型的数字,请在比较中删除单引号。
答案 2 :(得分:0)
如果您的Access版本/设置不支持SWITCH
,请考虑改用IIF
:
IFF(BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = "1", "Mr",
IIF(BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = "2", "Mme",
IIF(BN_CS_MP_MASTERPROFILE.CMP_SALUTATION = "3", "Mlle", "ND")))