1

我正在尝试根据名为time( datetime) 的列删除记录。下面是我的 sql 语句,以及我正在使用的表。SQL 服务器说这个查询影响了 0 条记录,我做错了什么?

DELETE FROM msg WHERE (time = '5/26/2013 8:39:44 PM')


sender          receiver        msg                     time
============================================================================
bob         jen         this is a message   5/26/2013 8:39:44 PM
jen         mel         Message to pel          5/26/2013 8:44:29 PM
4

3 回答 3

1

尝试这个:

DELETE FROM msg WHERE convert(datetime,time,101) = convert(datetime,'5/26/2013 8:39:44',101)
于 2013-05-28T03:56:10.147 回答
0

你也可以试试这个 SQL fiddle

由于您time已经有类型的列,datetime因此只需将值转换为日期时间。

于 2013-05-28T07:41:58.197 回答
0

它有效吗?

DELETE FROM msg WHERE time = convert(datetime, '5/26/2013 8:39:44 PM', 111)
于 2013-05-28T17:16:41.850 回答