Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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 选择具有最小值SQL的用户id_Php_Mysql_Database_Mysqli - Fatal编程技术网

Php 选择具有最小值SQL的用户id

Php 选择具有最小值SQL的用户id,php,mysql,database,mysqli,Php,Mysql,Database,Mysqli,如何从数据库表中选择链接到表的最小值的用户id 比如说 User ID Pending ------- -------- 0 5 1 4 2 7 '$resultSet = $mysqli->query("SELECT MIN(write_pending) FROM writerdata_tb"); if ($temp = $resultSet->fetch_assoc()) {

如何从数据库表中选择链接到表的最小值的用户id

比如说

User ID    Pending
-------    --------
0          5
1          4
2          7

'$resultSet = $mysqli->query("SELECT MIN(write_pending) FROM writerdata_tb");
            if ($temp = $resultSet->fetch_assoc()) {

            }'

在本例中,我希望返回的数据具有挂起最少的用户的值,在本例中为用户1。如何设置MySqli查询来处理此问题?将结果保存为变量以便在php的其余部分中使用的最佳方法是什么?

可能是这样的,但这在很大程度上取决于您的表结构。我假设您有一个带有一些ID和您提到的挂起值的通用用户表

SELECT userID FROM users WHERE pending = ( SELECT MIN(pending) FROM users );
嵌套的Select语句获取表中该列中最小的挂起值,然后可以通过强制将挂起作为嵌套的Select调用返回的值来优化Select userID语句

更新

为了澄清处理结果的后续问题,以下是对您提供的代码的修改:

$resultSet = $mysqli->query("SELECT userID FROM users WHERE pending = ( SELECT MIN(pending) FROM users )");

if($resultSet->num_rows > 0) {
    //We use a while loop here, in the event that there are multiple rows
    while($row = $resultSet->fetch_assoc()) {
        echo $row["userID"]; //Accessing the rows index at "userID"
    }
}

HTML和PHP代码在哪里?'$resultSet=$mysqli->query(“从writerdata_tb中选择MIN(write_pending));如果($temp=$resultSet->fetch_assoc()){}这就是我到目前为止所拥有的,我想做一个查询,并将用户id存储为一个变量。这个问题非常常见,它有自己的标记[best-n-per-group].
通过pending DESC limit 1从表ORDER中选择用户id,因此查询首先在pending中查找最小值,然后将其用作指向用户id的指针。我现在正在实现它,谢谢。是的,子查询返回所有待定值中的最小值,您可以搜索与该值关联的userID。如果这为您解决了问题,请接受答案。谢谢是的,我会的,但是,我如何捕捉结果并将其存储为变量?我一直在使用$resultset方法,但我确信有一种更有效的方法可以做到这一点$resultset只是一个变量名,而不是一个方法。要处理表查询的结果,请将它们存储在变量中(就像您所拥有的那样),然后处理该结果集中的每一行。您的示例在结果中只有一行,因为您有唯一的挂起值(我不知道这是否总是正确的),但请查看上面对我的答案的更新以查看示例。是的,这正是我想知道的。当我还在这里的时候,你知道你是否可以在cookies上使用mysql真正的转义字符串吗?