我正在尝试清除表中所有记录的一列。例如,如果我的表具有三列:id,comment和likes-我希望能够清除该likes列。
id
comment
likes
+---+-------+-----+ |id |comment|likes| +-----------------+ |1 |hi |3 | |2 |hello |12 | |3 |hey |1 | +---+-------+-----+
这样一来,它看起来像这样:
+---+-------+-----+ |id |comment|likes| +-----------------+ |1 |hi | | |2 |hello | | |3 |hey | | +---+-------+-----+
我猜想我将不得不使用MySQLUPDATE清除likes值,但是如何遍历所有记录并保持id和comment字段相同?
UPDATE
我不想手动更改每条记录。
UPDATE your_table SET likes = NULL
或如果您的likes专栏不允许NULL:
NULL
UPDATE your_table SET likes = ''
where默认情况下,某些用于执行数据库查询的SQL工具阻止对所有记录(没有子句的查询)进行更新。您可以配置它并删除该保存设置,也可以添加一个适用于所有记录的where子句,true并像这样进行更新:
where
true
UPDATE your_table SET likes = NULL WHERE 1 = 1
如果与进行 比较 ,NULL则还需要IS运算符。例子:
IS
UPDATE your_table SET likes = NULL WHERE likes IS NOT NULL
因为 比较 NULL与所述操作者相等(=)返回 UNKNOWN 。但是IS操作员可以处理NULL。
=