如何从mysql数据库中选择随机行(例如100中的10),并用数字顺序显示

时间:2018-10-04 10:33:24

标签: php mysql

如何从mysql数据库中选择随机行(例如从100中选出10条),并用连续数字显示它们

任何随机行都会被选中并赋予它们

1. XXXXX
2. YYYYY
3. ZZZZZ

但是在数据库中它们不是连续的

1 个答案:

答案 0 :(得分:0)

您可以使用PHP rand()函数。这是它的教程:https://www.w3schools.com/php/func_math_rand.asp
另外,要给他们一个有序列表,请使用<ol>

示例

$iWantThisManyRow = 4;
$minNumber = 10;
$maxNumber = 100;

for ($i=0; $i < $iWantThisManyRow; $i++) { 
    $rand = rand($minNumber, $maxNumber);
    $sql = "SELECT * FROM `tables` WHERE `id` = '$rand'";
    $result = mysqli_query($link, $sql);
    if(mysqli_num_rows($result) > 0) {
        $data = mysqli_fetch_assoc($result);
        $data = $data['field'];
        echo "<ol>$data</ol";
    }else{
        // Whatever you wanted to do when nothing was founded.
    }
}

请注意,您可能要使用预处理语句,并且上面的示例假定$link是数据库连接,而field是列名。