为什么在 MS ACCESS 中添加字符串不适用于前两行

问题描述

我想在一个表中添加来自不同列的两个字符串。 显示代码适用于每一行除了前两行

例如它应该是什么样子和如何工作

a | b => ab
c | d => cd
e | f => ef

例如它现在做什么

a|b => a
c|d => c
e|f => ef
g|h => gh
i|j => ij

我尝试了以下查询,但没有一个能正常工作

是否有奇怪的 MS Access 事情正在发生?还是我的查询有误?

SELECT (([Full_Name] + " ") + [Wohnort] ) AS Test
FROM Mitarbeiter;

SELECT ([Full_Name] + Wohnort) AS Test
FROM Mitarbeiter;

SELECT (([Full_Name] + " ") + Wohnort) AS Test
FROM Mitarbeiter;

解决方法

应该这样做:

SELECT ([Full_Name] + " ") & [Wohnort] AS Test
FROM Mitarbeiter;

或:

SELECT [Full_Name] & (" " + [Wohnort]) AS Test
FROM Mitarbeiter;

使用 + 的目的是在 Full NameNull

,

我对你的语法有点困惑。 MS Access 中的字符串连接运算符是 &,而不是 +。您可能需要考虑 NULL 值:

SELECT NZ([Full_Name],"") & NZ(" " & [Wohnort],"") AS Test