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];