繁体   English   中英

如何从表中获取数据,该数据在cakePHP的联接表中不可用

[英]how to get data from a table which data is not available in joined table in cakePHP

我正在使用cakePhp 3.6,我有两个表。 两者都加入了。 在一个表中,我有一些token表名称是codes ,在另一个表中,我存储了一些场所的code 表格名称是venues_codes
就像我在codes表中有10个code 而在venues_codes表5 code存储一些vanue。 这是venues_codes表的结构。 id venue_id code_id 在这里, venue_id来自另一个表。 现在不用担心了。 我只想从venues_codes codes表中不可用的codes表中获取其余五个code

这是我尝试过的方法,但是只能获取两个表中都可用的token

$this->loadModel('VenueCodes');
$this->loadModel('Codes');
$query = $this->VenueCodes->find()
->contain(['Codes'])
->select(['id','code_id']);`

我正在使用CakePHP。 但是,如果有人可以用常规的sql逻辑帮助我,那也将对我有所帮助。

这应该为您提供所有未连接到场所的代码:

$codes = $this->Codes->find()->notMatching('Venues');

纯mysql查询如下所示:

 SELECT code FROM codes WHERE code NOT IN (SELECT code_id FROM venues_codes);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM