Mysql 如何选择连接在一起的两个表的最后10行
我有个问题。我想获取两个表(live_st和load_balace)的最后10行,它们连接在一起,ip以134结尾。这两个表都有数百万的数据 我在mysql中尝试了这个查询:Mysql 如何选择连接在一起的两个表的最后10行,mysql,database,performance,sql-order-by,Mysql,Database,Performance,Sql Order By,我有个问题。我想获取两个表(live_st和load_balace)的最后10行,它们连接在一起,ip以134结尾。这两个表都有数百万的数据 我在mysql中尝试了这个查询: SELECT live_stats.domain_name FROM live_stats JOIN load_balance ON live_stats.user_id=load_balance.unique_id WHERE load_balance.ip_address like '%134' ORDER BY l
SELECT live_stats.domain_name
FROM live_stats JOIN load_balance
ON live_stats.user_id=load_balance.unique_id
WHERE load_balance.ip_address like '%134'
ORDER BY live_stats.created desc limit 10;
它起作用了,但太慢了。有没有办法加快查询速度;
感谢你的进步 如果可以将
ip\u地址
列拆分为4列TINYINT
列,则可以将WHERE load\u balance.ip\u地址(如“%134”
条件)更改为WHERE load\u balance.ip\u地址4=134
,并可以使用索引。否则,任何带有如“%something”
的查询都不太可能使用任何索引,因此将在load\u balance
上执行表扫描。表是不可修改的。谢谢,我认为order by子句对这一时间段不利