Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.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
Php Mysql选择最后添加的5个,并将其设置为rand_Php_Mysql - Fatal编程技术网

Php Mysql选择最后添加的5个,并将其设置为rand

Php Mysql选择最后添加的5个,并将其设置为rand,php,mysql,Php,Mysql,我想做的是按viewtime选择最后5个订单,然后从中选择5个订单,生成一个rand并给我1 例如,如果我选择viewlast:56789、56788、56787、56786、56785给我这5个数字的rand 1,让我们假设这56788或这56786 更新 这是我之前使用的命令,取最后5个,然后按兰德订购: $query = ' SELECT VID, thumb FROM video WHERE id IN ( SELECT VID F

我想做的是按viewtime选择最后5个订单,然后从中选择5个订单,生成一个rand并给我1

例如,如果我选择viewlast:56789、56788、56787、56786、56785给我这5个数字的rand 1,让我们假设这56788或这56786

更新


这是我之前使用的命令,取最后5个,然后按兰德订购:

$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
';

取最后5个,然后按兰德订购:

$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
';
它可能会帮助您:

SELECT * 
FROM (
    SELECT * FROM <#TABLE> ORDER BY viewtime DESC LIMIT 5
) AS TBL 
ORDER BY rand() LIMIT 1
更改表名。

它可能会帮助您:

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

更改表名。

您用php和mysql标记了这个问题。您希望仅在mysql中使用,还是作为一些php代码使用?请指定。im正在考虑使用mysql命令,但php是好的,您用php和mysql标记了这个问题。您希望仅在mysql中使用,还是作为一些php代码使用?请指定。im想用mysql命令来实现它,但是php可以这样做吗?选择VID,thumb from video WHERE title IN SELECT VID,thumb from video ORDER BY viewtime DESC LIMIT 5 ORDER BY RAND LIMIT 1,但我使用此命令将标题置于“%”之前$频道['name'].%'子查询需要返回1列。您可能需要id主键。子查询返回两列。当然,您需要主查询在子查询返回的同一列上进行筛选。我更新了post命令之前使用的命令。。。希望你能帮我解决这个问题。我试了一下代码,但是给了我这个错误。MySQL错误:这个版本的MySQL还不支持“LIMIT&IN/ALL/ANY/SOME subquery”,将它改为与子查询的内部联接。MySQL也比SELECT更好地优化连接…像这样?选择VID,thumb from video WHERE title IN SELECT VID,thumb from video ORDER BY viewtime DESC LIMIT 5 ORDER BY RAND LIMIT 1,但我使用此命令将标题置于“%”之前$频道['name'].%'子查询需要返回1列。您可能需要id主键。子查询返回两列。当然,您需要主查询在子查询返回的同一列上进行筛选。我更新了post命令之前使用的命令。。。希望你能帮我解决这个问题。我试了一下代码,但是给了我这个错误。MySQL错误:这个版本的MySQL还不支持“LIMIT&IN/ALL/ANY/SOME subquery”,将它改为与子查询的内部联接。MySQL也比SELECT更好地优化连接……这将显示前五个条目。正确的方法是按降序排列:order by viewtime DESC我刚刚添加了它这将显示前五个条目。正确的方法是按降序排列:order by viewtime DESC我刚刚添加了它