Equivalente CONCAT em MS Access
estou a fazer algum trabalho no MS Access e preciso de adicionar um prefixo a um monte de campos, conheço o SQL, mas não parece funcionar da mesma forma no Access
Basicamente preciso que isto seja traduzido para um comando que funcione no access:UPDATE myTable
SET [My Column] = CONCAT ("Prefix ", [My Column])
WHERE [Different Column]='someValue';
Procurei para cima e para baixo e não consigo encontrar uma tradução simples.
6
4 answers
UPDATE myTable
SET [My Column] = "Prefix " & [My Column]
WHERE [Different Column]='someValue';
Tanto quanto sei, não há CONCAT.
10
Author: Fred, 2013-12-05 15:29:08
Há dois operadores de concatenação disponíveis no acesso: +
; e &
. Eles diferem na forma como lidam com Null.
"foo" + Null
devolve Null
"foo" & Null
devolve "foo"
Por isso, se quiser actualizar os campos nulos [My Column]
para conter "Prefix "
depois, use ...
SET [My Column] = "Prefix " & [My Column]
Mas se preferir deixá-lo como nulo, pode usar o operador {[[3]} em vez disso ...
SET [My Column] = "Prefix " + [My Column]
No entanto, no segundo caso, poderá rever a Cláusula WHERE
para ignorar as linhas em que [My Column]
contém nulo.
WHERE [Different Column]='someValue' AND [My Column] Is Not Null
10
Author: HansUp, 2013-12-05 15:52:18
Pode usar o &
operador:
UPDATE myTable
SET [My Column] = "Prefix " & [My Column]
WHERE [Different Column]='someValue';
2
Author: Gordon Linoff, 2013-12-05 15:28:18
Uma vez que não existe nenhuma função Concat no MS-ACCESS, você pode simplesmente combinar ambas as cadeias de caracteres com +
operador:
UPDATE myTable
SET [My Column] = "Prefix " + [My Column]
WHERE [Different Column]='someValue';
2
Author: Kiril Rusev, 2013-12-05 15:31:01