mysql语句怎么接收不到数组?
程序员文章站
2022-05-30 09:42:33
...
$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 '
我想将上面查询出来的$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");
在while理循环有数据,可是在第一个语句里$array是没有数据的。
这是第二次查询连起来的语句,这样连起来可以查询,我想变成段一点的语句
select userid from member where agentid IN (select userid from member where agentid='$user[userid]' group by 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
第二次查询结果依照第一次查询的分类,第二次可以这样写语句,但第三次查询还怎么写,那得多长的语句呀
第三次查询结果依照第二次查询分类
已经搞定了。
上一篇: PHP实现上传文件并存进数据库的方法
推荐阅读
-
Outlook邮箱收不到当天的邮件怎么办? outlook接收不到邮件的解决办法
-
mysql 里 delete in 语句暴慢无比 怎么优化
-
阿里旺旺收不到图片怎么回事?阿里旺旺不能接收图片解决方法
-
MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事
-
mysql语句执行顺序是怎么样的,导致查询语句不同结果
-
微信信息收不到是怎么回事(无法接收信息的2个原因及解决法)
-
微信怎么一键切换登录?微信切换登录与接收不到消息的原因与解决办法
-
js ajax post 提交的时候后台接收不到参数,但是代码没有错,怎么回事
-
outlook2007接收不到邮件错误代码0x800ccc0f该怎么办?
-
ipad隔空投送接收方没反应怎么办? ipad隔空投送接收不到的解决办法