Microsoft Access-案例查询 [英] Microsoft Access - Case Query
问题描述
我只是尝试使用MS Access 2007 现在我想基于其他列值更新一列,在MY SQL中成功运行了该查询
I've just try using MS Access 2007 now I want to update a column based on other column value, in MY SQL it was successfull running this query
UPDATE HAI
SET REGION=(
CASE
WHEN (NUMREG LIKE '%1') THEN 'BDG'
WHEN (NUMREG LIKE '%2') THEN 'JKT'
WHEN (NUMREG LIKE '%3') THEN 'KNG'
END);
此查询将无法在MS Access中运行,错误为Sytax error (missing operator) in query expression
.我该如何解决?
This query won't run in MS Access, there is error Sytax error (missing operator) in query expression
. How can I solve this?
推荐答案
在Access SQL中没有CASE....您可以改用切换功能.
There is no CASE ... WHEN in Access SQL. You can use the Switch Function instead.
UPDATE HAI
SET REGION = Switch(
NUMREG Like '*1', 'BDG',
NUMREG Like '*2', 'JKT',
NUMREG Like '*3', 'KNG'
);
该查询使用Access的默认值(ANSI 89模式)*代替%通配符.如果要使用%通配符,可以使用ALike比较运算符来完成.
That query uses Access' default (ANSI 89 mode) * instead of % wildcard character. If you want to use the % wildcard, you can do it with the ALike comparison operator.
UPDATE HAI
SET REGION = Switch(
NUMREG ALike '%1', 'BDG',
NUMREG ALike '%2', 'JKT',
NUMREG ALike '%3', 'KNG'
);
这篇关于Microsoft Access-案例查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!