Home  >  Article  >  Backend Development  >  请问:这两句数据库操作语句什么意思

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

WBOY
WBOYOriginal
2016-06-20 12:35:37890browse

$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进行分组
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn