【问题标题】:Delete all rows with field beginning删除以字段开头的所有行
【发布时间】:2015-01-18 13:37:42
【问题描述】:

如何运行查询以从日期字段以 000-00-00 开头的表中删除所有行和相关字段条目

【问题讨论】:

  • 说真的,你问之前有没有做一些研究?

标签: mysql phpmyadmin


【解决方案1】:

你的问题不是很清楚,如果你想删除日期为“0000-00-00”的所有行:

DELETE FROM table_name WHERE date = '0000-00-00'

或者如果它是一个日期时间:

DELETE FROM table_name WHERE date = '0000-00-00 *'

【讨论】:

  • 如果日期是0000-00-00 12:15:45 怎么办?
  • 试试这个:'0000-00-00 *'
【解决方案2】:

您可以使用substring_index 并比较删除

mysql> select substring_index('0000-00-00 12:15:45',' ',1);
+----------------------------------------------+
| substring_index('0000-00-00 12:15:45',' ',1) |
+----------------------------------------------+
| 0000-00-00                                   |
+----------------------------------------------+
1 row in set (0.00 sec)

mysql> select substring_index('12:15:45',' ',1);
+-----------------------------------+
| substring_index('12:15:45',' ',1) |
+-----------------------------------+
| 12:15:45                          |
+-----------------------------------+

所以删除查询可能是

delete from 
table_name
where 
substring_index(column_name,' ',1) = '0000-00-00'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-30
    • 1970-01-01
    • 2010-12-16
    • 2012-01-02
    • 2014-05-07
    • 1970-01-01
    • 2020-01-07
    相关资源
    最近更新 更多