我有一个表,其中包含一个逗号分隔的URL列表。忽略应该更新架构的事实。以下两种说法都适用:
SELECT id FROM website WHERE url LIKE '%example.com%';
SELECT id FROM website WHERE FIND_IN_SET('example.com', url);
有没有一个好的方法来衡量查询的性能?有没有更好的方法(不更新模式)?
使用explain得到以下结果:
+-------------+--------+---------+------+----------+
| select_type | type | key | rows | filtered |
+-------------+--------+---------+------+----------+
| SIMPLE | ALL | NULL | 5 | 20.00 | (LIKE)
| SIMPLE | ALL | NULL | 5 | 100.00 | (FIND_IN_SET)
+-------------+-------+----------+------+----------+
1条答案
按热度按时间v1l68za41#
在mariadb中,您可以看到:
SET profiling=ON;
以及SHOW PROFILE;
在查询之后。样品