我有一个MySQL问题
我有两个表(帖子和作者)的一对多关系(因为每个帖子都是由作者写的,作者可以写多个帖子).
所以这些是表格:
Authors: id:BIGINT, name:VARCHAR(255) Posts: id:BIGINT, author_id:BIGINT, body:TEXT
我有700,000个帖子和60,000个作者.
如果我选择一个作者(例如author_id = 45)并且我想要他写的随机帖子我写道:
SELECT * FROM Posts WHERE author_id = 45 ORDER BY RAND() LIMIT 1;
Run Code Online (Sandbox Code Playgroud)
我知道这是对的,但当我在网上同时有4,000人时,需要大约6秒钟.
也许在Posts表中索引author_id列会加快速度?
谢谢你们!:)