0

我尝试做的是按观看时间选择最后 5 个订单,然后从这 5 个订单中选择一个 rand 并给我 1

例如,如果我选择 viewlast: 56789, 56788, 56787, 56786, 56785 给我这 5 个数字 1 的兰特,让我们说这个 56788 或这个 56786

更新

$Last_Video         = $db->fetch_all("select VID, thumb FROM video WHERE title LIKE '%" . $Channel['name'] . "%' ORDER BY viewtime DESC limit 5");

这是我以前使用的命令

4

2 回答 2

3

取最后 5 个,然后按 RAND() 排序:

$query = '
    SELECT VID, thumb
    FROM video
    WHERE id IN (
        SELECT VID
        FROM video
        WHERE title LIKE "%'.$Channel['name'].'%"
        ORDER BY viewtime DESC
        LIMIT 5)
    ORDER BY RAND()
    LIMIT 1
';
于 2013-07-26T23:15:05.103 回答
1

它可能会帮助您:

SELECT * 
FROM (
    SELECT * FROM <#TABLE> ORDER BY viewtime DESC LIMIT 5
) AS TBL 
ORDER BY rand() LIMIT 1

<#TABLE>随表名更改。

于 2013-07-26T23:18:16.677 回答