Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何选择连接在一起的两个表的最后10行_Mysql_Database_Performance_Sql Order By - Fatal编程技术网

Mysql 如何选择连接在一起的两个表的最后10行

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

我有个问题。我想获取两个表(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  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子句对这一时间段不利