2014-10-18 95 views

回答

2

在这种情况下,用户兰特(),你需要做的是,在2个步骤:

首先,您需要创建在其中存储20视图第一图像最高likeCount

CREATE VIEW first_Twenty_images AS 
    SELECT * 
    FROM images_table 
    ORDER BY likeCount DESC 
    LIMIT 20 

之后,您可以使用我们之前创建的视图中选择从中随机元素:

SELECT * FROM first_Twenty_images ORDER BY RAND() 
0

您可以在查询

SELECT * FROM table_name ORDER BY RAND() 
1

像这样尝试未经测试。

Select * from (select @a:[email protected]+1 no, id, path, name, likeCount from 
table1,(SELECT @a:= 0) AS a order by likeCount desc limit 20) as tt order by 
Floor(RAND() * 20) limit 1