我正在对几个有点大的表(每个表分别有60,000和1,200,000行)运行查询,而这却花了很多时间(在撰写本文时已经运行了90分钟)。本质上,我希望选择在两个表中名称匹配的位置,对它们进行修整并删除所有逗号和句点,因为两者之间标点符号的使用有所不同。最终目标是从具有相同WHERE要求的table_a中删除。目前,我只是想让SELECT尽快合理地工作。
这是我正在使用的查询:
SELECT count(*) FROM table_a WHERE TRIM(REPLACE(REPLACE(name_a,'.',''),',','')) IN (SELECT TRIM(REPLACE(REPLACE(name_b,'.',''),',','')) from table_b);
是否有关于如何使其更快的想法?