从12月16日到31日删除ascii码的Mysql脚本

标签 mysql sql

谁能告诉我这个脚本哪里出了问题?我实际上是在尝试使用脚本删除从 16 到 31 的所有 ASCII 代码。我已经开发了一个脚本来选择它。

SELECT * from `TABLE_NAME` WHERE COLUMN_NAME like %(ascii code here)%

但是我该如何删除它。这段代码对吗?

DELETE from `TABLE_NAME` WHERE .....(dont know what to say here)

最佳答案

DELETE 命令从表中删除整行。我猜您想从字符串 DESCRIPTION 中删除特殊字符而不是一行。那么你应该使用 UPDATE 语句和 REPLACE()功能。

例如,如果要删除 ASCII 码 16,则使用以下语句:

UPDATE Animals 
   SET Description = REPLACE(Description,CHAR(16),'')
   WHERE Description LIKE CONCAT('%',CHAR(16),'%');

SQLFiddle demo

关于从12月16日到31日删除ascii码的Mysql脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23768236/

相关文章:

sql - 用GROUP BY之后的号码查询

mysql - 多对多关系SELECT问题

mysql - 如何在centos 7、linux上卸载mariadb并安装mysql?

mysql - 我应该使用触发器来连接两个相关但高度非规范化的表吗?

sql - 使用 UNION 查询从 ODBC 源中检索多行

带有 varchar 参数的 SQL Server 存储过程返回错误的结果

php - 逗号分隔值在 PHP MYSQL 中不起作用

mysql - 将列从 CSV 导入现有的 MySQL 表

mysql - 子查询在 select 语句中返回多于 1 行

sql - PostgreSQL - 计算层次结构中的元素