以编程方式将多个SQL列组合并存储到单个列中

时间:2011-03-21 16:50:54

标签: c# sql ms-access oledb

我在Access DB中有多个列,我想组合字段A,B,C并将它们存储在D列中,并在它们之间使用逗号分隔符。 D = A,B,C。

现在我正在使用OleDbConnection,但我对其他方法持开放态度。如何将来自多个SQL列的行数据组合并存储到单个列中?

3 个答案:

答案 0 :(得分:3)

假设字符串的简单情况,您可以使用更新语句:

Update table set D=A+','+B+','+C

然而,这可能不是一个好主意。您可能想要推断“为什么”您想要这样做,因为可能有更好的选择。

答案 1 :(得分:2)

{{2p>上面做了很多假设。

答案 2 :(得分:2)

我怀疑为什么要在另一列D中冗余地存储这些A,B和C值.D可以是一个字段表达式,根据需要连接其他字段值。

SELECT A & "," & B & "," & C AS D
FROM YourTable;

如果您使用原始方法(将连接值存储在单独的列中,D),则需要确保每次A,B和/或C中的值更改时D都会更新。使用SELECT查询方法, D始终保证准确反映A,B和C中的当前值......无需额外的努力。

相关问题