我有2张桌子,上面有电话号码。 在表A中,我必须删除不在表B中的所有电话号码。
在表B中,电话号码带有conterycode,但是在表A中,它们没有conterycode。
为此,我尝试使用类似于LIKE%Phonenumber%
的命令我已经尝试过这段代码,但这给了我一个语法错误
DELETE FROM temp_table
WHERE NOT EXISTS (
SELECT *
FROM TableB
WHERE WorkTelephoneNumber LIKE temp_table.%PhoneNumber%
);
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%PhoneNumber%
)' at line 5
答案 0 :(得分:2)
您可以在下面尝试-
2018-12-28 00:00:00
2018-12-28 10:26:50
答案 1 :(得分:1)
子查询将非常慢。您可以改用join
Delete t1 from temp_table t1
join TableB on tableB.WorkTelephoneNumber like concat('%',t1.PhoneNumber,'%')