如何在多表中删除指定字符集的相同数据
针对表 t1 和 t2 中包含字符编码为 gbk 的数据,需要删除形如 “coco” 的数据。同时,使用 utf8mb4 校对集进行对比。
为了满足上述需求,可以使用多表 delete 语句。该语句允许一次删除多个表中的数据。语法如下:
delete [low_priority] [quick] [ignore] from tbl_name[.*] [, tbl_name[.*]] ... using table_references [where where_condition]
登录后复制
在这种情况下,要删除两个表中的数据,可以编写以下语句:
DELETE FROM t1, t2 USING t1, t2 WHERE convert(t1.username USING utf8mb4) = convert(t2.username USING utf8mb4);
登录后复制
此语句将使用 utf8mb4 校对集对 t1 和 t2 表中的用户名进行比较,并删除符合条件的所有行。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
【小浪云服务商 - 服务器12元起 - 挂机宝5元起】
THE END
暂无评论内容