我正在MS Access中做一些工作,我需要在一堆字段中附加一个前缀,我知道SQL,但它似乎在Access中看起来不一样
基本上我需要把它翻译成一个可以在访问中使用的命令:
UPDATE myTable
SET [My Column] = CONCAT ("Prefix ", [My Column])
WHERE [Different Column]='someValue';
我上下搜索,似乎找不到简单的翻译。
答案 0 :(得分:12)
Access中有两个连接运算符:+
;和&
。他们在处理Null方面有所不同。
"foo" + Null
返回Null
"foo" & Null
返回"foo"
因此,如果您想要在之后更新Null [My Column]
字段以包含"Prefix "
,请使用...
SET [My Column] = "Prefix " & [My Column]
但如果您希望将其保留为Null,则可以使用+
运算符代替......
SET [My Column] = "Prefix " + [My Column]
但是,在第二种情况下,您可以修改WHERE
子句以忽略[My Column]
包含Null的行。
WHERE [Different Column]='someValue' AND [My Column] Is Not Null
答案 1 :(得分:11)
UPDATE myTable
SET [My Column] = "Prefix " & [My Column]
WHERE [Different Column]='someValue';
据我所知,没有CONCAT
答案 2 :(得分:2)
您可以使用&
运算符:
UPDATE myTable
SET [My Column] = "Prefix " & [My Column]
WHERE [Different Column]='someValue';
答案 3 :(得分:2)
由于MS-ACCESS中没有Concat功能,您可以简单地将两个字符串与+
运算符结合使用:
UPDATE myTable
SET [My Column] = "Prefix " + [My Column]
WHERE [Different Column]='someValue';