php mysql for 循环

发布于 2024-11-01 10:39:00 字数 544 浏览 1 评论 0原文

在我的查询中,我只希望 id 1-3 出现在结果中,而不是 4-6。还有其他方法吗?

beautician database table:
id_beautician   name
1               a
2               b
3               c
4               d
5               e
6               f

我尝试将下面的代码放入 mysql 查询中,

for($i=4; $i<=6; $i++) :
    $q.$i = $db->query("SELECT * FROM beautician WHERE id_beautician='$i'");
    $r.$i = $q.$i->fetch_assoc();
    //echo $i;
endfor;

但它给了我一个错误:

类 mysqli_result 的对象可以 不转换为字符串

in my query i want only from id 1-3 to appear in the result, not 4-6. is there any other way to do it?

beautician database table:
id_beautician   name
1               a
2               b
3               c
4               d
5               e
6               f

i tried to put the code below in mysql query

for($i=4; $i<=6; $i++) :
    $q.$i = $db->query("SELECT * FROM beautician WHERE id_beautician='$i'");
    $r.$i = $q.$i->fetch_assoc();
    //echo $i;
endfor;

but it gives me an error:

Object of class mysqli_result could
not be converted to string

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

巴黎盛开的樱花 2024-11-08 10:39:00

不要执行 n 查询,而是修改 SQL 查询以仅匹配您需要的数据 - 例如:

$query = $db->query("SELECT * FROM beautician WHERE id_beautician <= 3");
while ( $row = $query->fetch_assoc() ) {
    echo $row['id'] . ' = ' . $row['name'] . '<br/>';
}

Instead of doing n queries, modify SQL query to match only data you need - for example:

$query = $db->query("SELECT * FROM beautician WHERE id_beautician <= 3");
while ( $row = $query->fetch_assoc() ) {
    echo $row['id'] . ' = ' . $row['name'] . '<br/>';
}
坦然微笑 2024-11-08 10:39:00

如果 ids 不按顺序,您也可以使用如下。

$query = $db->query("SELECT * FROM beautician WHERE id_beautician in (1,2,3)");
while ( $row = $query->fetch_assoc() ) 
{
    echo $row['id'] . ' = ' . $row['name'] . '<br/>';
}

在查询中使用 IN 有时会减慢执行速度,但对于小型数据库可以有效地使用。

If ids are not in sequence, you can also use as below.

$query = $db->query("SELECT * FROM beautician WHERE id_beautician in (1,2,3)");
while ( $row = $query->fetch_assoc() ) 
{
    echo $row['id'] . ' = ' . $row['name'] . '<br/>';
}

using IN in query sometimes slow down the execution, but can be used efficiently for small-size database.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文