sql - 改进 SQL 查询连接
问题描述
我有一个需要数小时才能运行的 SQL 查询。我的加入是关于产品的描述。由于产品描述只有几句话,因此创建一个唯一的数字 id 并加入它会更有效吗?
例子:
SELECT A*, B.something
FROM tableA A JOIN TABLE B
ON A.product_details = B.product_details
解决方案
对于此查询:
SELECT A.*, B.something
FROM tableA A JOIN
TABLE B
ON A.product_details = B.product_details
最好的索引是打开的B(product_details, something)
——但是product_details
作为第一个键是最重要的。
我一般推荐一个数字索引。他们的效率更高一些。它们减少了需要担心的事情的数量,例如键末尾的空格和排序规则冲突。