Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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结果集中检索单个行或单元格_Php_Mysql_Sql - Fatal编程技术网

Php 从MySQL结果集中检索单个行或单元格

Php 从MySQL结果集中检索单个行或单元格,php,mysql,sql,Php,Mysql,Sql,好的,我可以进行查询并输出整个结果集。我需要的是只选择结果集的一行,以避免对该行/单元格进行全新的查询。比如说 $query = "SELECT * FROM books"; $query_result = mysql_query($query,$connection); while($book = mysql_fetch_array($query_result){ output... (have no problem outputting the whole result set) }

好的,我可以进行查询并输出整个结果集。我需要的是只选择结果集的一行,以避免对该行/单元格进行全新的查询。比如说

$query = "SELECT * FROM books";
$query_result = mysql_query($query,$connection);
while($book = mysql_fetch_array($query_result){
 output... (have no problem outputting the whole result set) 
}

我只是想知道在不进行全新查询的情况下,选择结果集的一行或一个单元格需要什么。非常感谢

简单的答案是“where”子句

$query=” 挑选* 从书本上 WHERE books.title='SQL for Dummies'
";

如果使用

SELECT * FROM books LIMIT 1
您可能希望添加一个orderby来控制返回哪一行。例如:

SELECT * FROM books ORDER BY date_published DESC LIMIT 1
如果不需要表中的所有列,只需将
*
替换为所需列的列表,例如:

SELECT author, title
FROM books 
ORDER BY date_published DESC 
LIMIT 1

如果仍要选择所有行,但还需要整个结果集旁边的某个特定行,则可以将其保存在变量中

while(book = mysql_fetch_array($query_result){  
  if (some condition) {
    $var = $row['col'];
  }
} 
echo $var;

如果您的任务是检索整个集合,但只处理一行,则只需跳过
while
-循环即可

$row = mysql_fetch_array ($query_result);

您可以使用此查询获取单行:

SELECT * FROM books LIMIT 1
或者


//$book具有第一行结果

您是否忘记了
book
上的
$
从…
中选择某个字段,然后
echo$book['somefield']
?好的,听着,问题不是如何进行查询。我明白了。问题只是输出结果集的单个行/单元格。原因是因为我现在有一个项目,我必须为一个选择列表编译一个图书列表。在下一页,我需要从结果集中获得一个特定的图书名称。我试图避免创建另一个查询。有可能吗?请停止使用过时的
mysql\u*
函数,学会使用。+1因为我认为这就是问题所在,而不是调整sql查询。这正是我想要的。非常感谢。
$query = "SELECT * FROM books";
$query_result = mysql_query($query,$connection);

$book=$query_result[0];