首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WHERE子句中使用数组中的值多次运行mysql查询

问在WHERE子句中使用数组中的值多次运行mysql查询
EN

Stack Overflow用户
提问于 2012-03-28 23:49:51
回答 4查看 982关注 0票数 0

我需要根据用户ID多次运行数据库查询。以下是我的查询:

代码语言:javascript
复制
    $query1="INSERT INTO wp_scloyalty (userid, value) VALUES ('XXXXX', '01234')";

我有一个单独查询的用户ID数组,如下所示:

代码语言:javascript
复制
while($rows=mysql_fetch_array($allresult)){  

    $birthdays_today[] = $rows['user_id']; 

}

echo $birthdays_today[0];

我想要运行查询,但是在查询中有"userid“= XXXXX,我想用数组中的用户ID填充它。这意味着查询必须运行多次,每次都会将下一个ID输入到查询中。

这有意义吗?

谢谢:)

EN

回答 4

Stack Overflow用户

发布于 2012-03-28 23:53:30

MySQL具有批量插入功能。

$query1="INSERT INTO wp_scloyalty (userid, value) VALUES ('XXXXX', '01234'), ('XXX2', '23234'), ('XXXX3', '3434545')"

代码语言:javascript
复制
<?php
$query = "INSERT INTO wp_scloyalty (userid, value) VALUES ";
$usersToInsert = array();
foreach($birthdays_today as $user_id){
    $usersToInsert[] = "($user_id, '01234')";
}
$query .= implode(',', $usersToInsert);
?>
票数 2
EN

Stack Overflow用户

发布于 2012-03-28 23:51:55

使用for循环,并使用sprintf()和字符串格式更改查询。

票数 1
EN

Stack Overflow用户

发布于 2012-03-28 23:52:41

代码语言:javascript
复制
<?php
foreach($birthdays_today as $uid){
    mysql_query(); // ...
}
?>

但

代码语言:javascript
复制
<?php
while($rows=mysql_fetch_array($allresult)){  
    mysql_query(); // use $rows['user_id'] here
}
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9911213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档