【发布时间】:2017-12-19 03:38:36
【问题描述】:
我正在尝试获取有关某个特定人员的最新信息,并且我正在使用类似的查询
SELECT * FROM Table WHERE Name LIKE 'Peter' ORDER BY ID DESC LIMIT 1
和
SELECT * FROM Table WHERE Name LIKE 'Mary' ORDER BY ID DESC LIMIT 1
因为每天在表中会在更新的瞬间为不同的人插入新数据(供记录参考),所以我想通过“ORDER BY ID DESC LIMIT 1”打印出几个人的最新信息
我尝试用“mysqli_multi_query”和“mysqli_fetch_row”打印出来
喜欢
$con=mysqli_connect($localhost,$username,$password,'Table');
$sql = "SELECT * FROM Table WHERE Name LIKE 'Peter' ORDER BY ID
DESC LIMIT 1 ";
$sql .= "SELECT * FROM Table WHERE Name LIKE 'Mary' ORDER BY ID
DESC LIMIT 1";
// Execute multi query
if (mysqli_multi_query($con,$sql))
{
do
{
// Store first result set
if ($result=mysqli_store_result($con)) {
// Fetch one and one row
while ($row=mysqli_fetch_row($result))
{
echo '<tr>'; // printing table row
echo '<td>'.$row[0].'</td>';
echo '<td>'.$row[1].'</td>';
echo '<td>'.$row[2].'</td>';
echo '<td>'.$row[3].'</td>';
echo '<td>'.$row[4].'</td>';
echo '<td>'.$row[5].'</td>';
echo '<td>'.$row[6].'</td>';
echo '<td>'.$row[7].'</td>';
echo '<td>'.$row[8].'</td>';
echo '<td>'.$row[9].'</td>';
echo '<td>'.$row[10].'</td>';
echo '<td>'.$row[11].'</td>';
echo '<td>'.$row[12].'</td>';
echo '<td>'.$row[13].'</td>';
echo '<td>'.$row[14].'</td>';
echo'</tr>'; // closing table row
}
// Free result set
mysqli_free_result($result);
}
}
while (mysqli_next_result($con));
}
mysqli_close($con);
?>
在结果页面中,它不显示任何错误消息,但不打印任何结果。 对各个查询进行了测试。
请指教,非常感谢
有没有其他方法可以保持查询简单,所以不需要使用mysqli_multi_query?
【问题讨论】:
-
错字?您的查询之间没有分号。搜索我的任何 mysqli_multi_query 答案——我通常会对这些帖子进行错误检查。
-
看看当你实现这种 sn-p 时会发生什么:stackoverflow.com/a/22469722/2943403
标签: php mysql mysqli-multi-query