我有这个表结构: Table
我需要找到 id_exchange 为 1 和 7 的不同“符号”。我有一个带子查询的查询:
SELECT DISTINCT symbol
FROM ohlcv
WHERE
id_exchange=1
AND quote_currency='USDT'
AND symbol IN (SELECT DISTINCT symbol FROM ohlcv WHERE id_exchange=7 AND quote_currency='USDT');
它找到了想要的数据,但是速度很慢。 有没有办法优化它,也许对同一个表进行内部联接?
谢谢!
* 更新 * 我不知道那个计数(符号)在那里做什么,它不是原始查询的一部分,我只是看到了那个错误。我可能做了一些测试并复制了错误的测试。请原谅我的错误。 :(
* 索引结构 * Show index from ohlcv
最佳答案
从你的问题来看,你似乎需要不同的内部计数,因为它会给你不同的符号计数。
SELECT count(DISTINCT symbol)
FROM ohlcv
WHERE id_exchange IN (1,7)
AND quote_currency='USDT'
关于mysql - 如何在mysql中使用同表连接进行优化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52378919/