首页  >  文章  >  后端开发  >  请问:这两句数据库操作语句什么意思

请问:这两句数据库操作语句什么意思

WBOY
WBOY原创
2016-06-20 12:35:37890浏览

$level1=pdo_fetchall('select id from ' . tablename('shop_member') . ' where agentid='".$member['id']."' ', 'id');

$level2=pdo_fetchall('select id from ' . tablename('shop_member') . ' where agentid in( ' . implode(',', array_keys($level1)) . ') ', 'id');

第一点:语句结束都跟了一个, 'id' 这什么意思?

第二点:where agentid in( ' . implode(',', array_keys($level1)) . ') ', 'id'这句不懂

谢谢了!


回复讨论(解决方案)

你 echo $level1; echo $level2; 就知道了
$level1 是读取一个 agentid 的记录
$level2 是读取一组 agentid 的记录

你 echo $level1; echo $level2; 就知道了
$level1 是读取一个 agentid 的记录
$level2 是读取一组 agentid 的记录



你 echo $level1; echo $level2; 就知道了
$level1 是读取一个 agentid 的记录
$level2 是读取一组 agentid 的记录


是关联ID,根据ID再分组

一个是读取id=xxx的记录
另一个是读取id=xxx or id=xxx1 or id=xxxx2 的记录。

一个是读取id=xxx的记录
另一个是读取id=xxx or id=xxx1 or id=xxxx2 的记录。


$sql=$empire->query("select userid from member where agentid='".$user[userid]."' group by userid");

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

第一条语句读出来3条,但第二个mysql语句读不到第一条的数据

你echo "select userid from member where agentid in( ' . implode('', array_keys($sql)) . ') group by userid"  的结果在phpmyadmin 执行有数据吗

你echo "select userid from member where agentid in( ' . implode('', array_keys($sql)) . ') group by userid"  的结果在phpmyadmin 执行有数据吗


array_keys( $sql)是上一个mysql语句查询的结果,然后这个语句根据上个语句查询查询在查询,并用group by userid进行分组
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn