SQL查询将数据附加到单元格的现有值

时间:2013-03-11 07:22:54

标签: c# asp.net sql sql-server sql-server-2008

我需要一个查询,它会将数据附加到单元格的现有值。 对于Eg: 细胞的当前价值:“2013-03-15” 更新后的值:“2013-03-15,2013-03-25”

甚至可能吗? 注意:我不想一次更新整个列。只有细胞。

4 个答案:

答案 0 :(得分:3)

尝试这样的事情:

UPDATE tblMyTable
    SET MyCell = MyCell + ',' + 'My Other Value'

或者

UPDATE tblMyTable
    SET MyCell = MyCell + ',' + @MyParameter

请记住,MyCell的类型需要基于文本,例如:nvarchar(256)等......

答案 1 :(得分:1)

如果假设您使用的是DateTime DataType,那么您必须:

创建另一个表,例如RequestDateTime:

Create table REQUEST_DATE_TIME(
  REQUEST_ID VARCHAR(10), -- or whatever PK your main table use
  Request_date DATETIME
)

然后在两个表之间添加关系。

但是,当您使用varchar(n)数据类型时,您可以执行以下简单操作:

Update table set DateTimeCell = DateTimeCell + CAST(@VALUE AS VARCHAR)

如果你说出你想要达到的目标,也许你可以得到更好的答案。

答案 2 :(得分:0)

如果您使用日期,则无法进行此操作。使用文本数据类型。

首先,从相应单元格的数据库中读取数据,然后通过字符串连接附加数据。

接下来,更新单元格

while (myReader.Read())
{ 
String d1=myReader["dat"].ToString());
}
String d2=d1+","+your_variable or data

更新

答案 3 :(得分:0)

不要那样做。创建另一个列,例如newDate,并将新值存储在那里。当您使用日期时,您必须存储它们,例如日期,而不是文本。或者,您可以将日期存储在单列中,并在您引用的学生表中使用某种外键。