2

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

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

4

4 回答 4

3

尝试这样的事情:

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

或者

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

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

于 2013-03-11T07:28:29.933 回答
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)

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

于 2013-03-11T07:33:30.713 回答
0

如果您使用日期,这是不可能的。使用文本数据类型。

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

接下来,更新单元格

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

更新它

于 2013-03-11T07:26:38.580 回答
0

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

于 2013-03-11T07:30:01.540 回答