如何使用多表 DELETE 语句删除两个表中字符集相同的特定数据?
如何在多表中删除指定字符集的相同数据
针对表 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 表中的用户名进行比较,并删除符合条件的所有行。
以上就是如何使用多表 DELETE 语句删除两个表中字符集相同的特定数据?的详细内容,更多请关注其它相关文章!