欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

mysql语句怎么接收不到数组?

程序员文章站 2024-02-02 10:00:10
...
$sql=$empire->query("select userid,agentid,username from member where agentid='".$user[userid]."' group by userid");
while($r=$empire->fetch($sql))/*逐行获取结果集中的记录,得到数组row*/
{
$array[]=$r;//接受结果集
}

echo '
';
print_r($array);//打印数组没有问题,出来的是数组
echo '
';

我想将上面查询出来的$array这个数组传递到下面这个mysql语句中,应该怎么处理。用了group by userid进行分类,然后下面这个mysql语句是再次查询数据库,再然后根据上面分类出来的结果再进行分类。

$sql2=$empire->query("select userid,agentid,username from member where agentid in( ' . implode('', array_keys($array)) . ') group by userid");


回复讨论(解决方案)

$array 二维数组
array_keys($array) 得到的只是 $array 的第一维的下标(0,1,2,3....)

$array 二维数组
array_keys($array) 得到的只是 $array 的第一维的下标(0,1,2,3....)

请问 应该怎么写这个语句?
在while理循环有数据,可是在第一个语句里$array是没有数据的。

你到底想干什么?
这样硬凑代码是不行的

你到底想干什么?
这样硬凑代码是不行的


这是第二次查询连起来的语句,这样连起来可以查询,我想变成段一点的语句
select userid from member where agentid IN (select userid from member where agentid='$user[userid]' group by userid) group by userid

第二次查询结果依照第一次查询的分类,第二次可以这样写语句,但第三次查询还怎么写,那得多长的语句呀

第三次查询结果依照第二次查询分类

已经搞定了。