THINKPHP如何获取一个表2个字段中相同的数据

如图,我的想法是先根据字段 tel 查询出【王五】的一条数据,然后提取【王五】的 tel作为条件再对表进行查询。查询出与字段btel相同的数据。但是新手不知道如何下手 = =,大神求救~~能写出PHP代码更感激不尽!
附上我的代码:
<?php
class JzAction extends IndAction {
public $id;
public function index(){
$id = $this->id;
$Data = M('userinfo');
$where['id']=array('eq',$id);
$this->data = $Data->where($where)->select();
?>
输出结果:
id name tel btel
3 王五 1589456125 1589456125

这个用OR查询就可以了

(tel = '158XXXX') OR (brel = '158XXXX')

//这里是TP的写法   
//不知道对不对   
//你可以测试一下   
//我一般都是用M() -> query(SQL语句)这样去写的
$model = M('表名');
$where['tel'] = array('eq','1589456125');
$where['btel'] = array('eq','1589456125');
$where['_logic'] = 'OR';
$model -> where($where) -> oreder('id DESC') ->  select();

追问

感谢您的回答,是这样的,1589456125这个值并不是固定的。是根据用户的ID获取的。
意思是,我之前写了一段代码,自动判定到当前访问的用户ID,然后根据该用户的tel 查询btel和他tel相同的用户数据

所以我的想法是提取第一次查询结果的tel值,然后再次对这个张表查询。
我现在就是不知道怎么提取查询结果的字段。谢谢您的回答

追答//=.=  我知道不是固定的   唉  算了  这样吧
$model = M('表名');
$where['tel'] = array('eq',"{参数}");
$where['btel'] = array('eq',"{参数}");
$where['_logic'] = 'OR';
$model -> where($where) -> oreder('id DESC') ->  select();

追问

= = ,我现在就是不知怎么获取 “参数”。
比如, 王五访问网页,然后获取到 王五的 ID是 3,然后根据王五的ID进行查询

输出结果:
id name tel btel
3 王五 1589456125 1589456125

现在我怎么使用王五的 tel 在对表进行查询,筛选出 btel=王五.tel的用户。
谢谢您的耐心解答

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-09-21
  SELECT `username`,COUNT(`username`) AS c FROM `answer` GROUP BY `username` ORDER BY c DESC LIMIT 10
  这样可以查询出 那些username 和出现的次数;
  $Model = new Model() // 实例化一个model对象 没有对应任何数据表
  $Model->query("这里是上面的sql语句");

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网