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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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的用户。
谢谢您的耐心解答

参考技术A   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语句");

thinkPHP5 对数据库某一字段的数据批量增加2

使用setInc 发现对于数据库中不同数字不能批量增加,会报错,想问有什么好的方法解决?

参考技术A 我现在随机获得了几条数据比如array(2)[0]=>array(4)["id"]=>string(2)"15"["nameid"]=>string(8)"zhangyub"["hunponame"]=>string(7)"绔犻奔b"["pinji"]=>string(1)"3"[1]=> 参考技术B 拼接原声sql或循环添加,推荐第一种运行效率高,内存站的少

以上是关于THINKPHP如何获取一个表2个字段中相同的数据的主要内容,如果未能解决你的问题,请参考以下文章

php thinkphp3。2怎么获取某数据库字段的内容?

THINKPHP怎么查询一张表中某个字段数据重复次数最多的前几名!

MYSQL查一个字段中 多个值

thinkphp5一个表里的字段值就是另一个表里的字段值,怎么获取另一个表的字段值呢

thinkPHP 如何查询出数据库中id最大的一条数据

MSSQL 中如何判断两个表的所有数据是不是相同(两个表的字段已经相同)