thinkphp 使用模型实现多表连接查询

解决问题,多张表的查询连接问题,3张表及以上

爷爷表 有字段id

爸爸表 有字段id,grandfather_id

儿子表 id,parent_id

控制器中编写

php 复制代码
public function getdata(){
$data = model('爷爷表')->with(['father.son'])->select();
var_dump($data)
}

模型

爷爷模型

php 复制代码
public function father(){
		return $this->hasmany('爸爸表表名','爸爸表的外键','爷爷表与爸爸表关联的主键');
}

爸爸模型

php 复制代码
public function son(){
		return $this->hasmany('儿子表名','儿子表的外键','爸爸表与儿子表关联的主键');
}

儿子表模型

只需要继承model,其他不用做

相关推荐
一起养小猫几秒前
Flutter for OpenHarmony 实战 文件存储与数据库操作完全指南
开发语言·jvm·数据库·spring·flutter·harmonyos
2301_765703141 分钟前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
浒畔居3 分钟前
使用Docker容器化你的Python应用
jvm·数据库·python
橙露4 分钟前
数据库运维核心:MySQL主从复制与读写分离的部署与维护
运维·数据库·mysql
辉辉要奋斗8 分钟前
MySQL安装出现This application requires Visual Studio 2019 x64Redistributable,Please install the Redistri
数据库·mysql·visual studio
码农水水9 分钟前
SpringBoot配置优化:Tomcat+数据库+缓存+日志全场景教程
java·数据库·spring boot·后端·算法·tomcat·哈希算法
爱学习的阿磊15 分钟前
Python迭代器(Iterator)揭秘:for循环背后的故事
jvm·数据库·python
wljt25 分钟前
游标分页原理
java·前端·数据库
一条咸鱼_SaltyFish27 分钟前
零失败零超卖:一种基于Redis的强一致性热点库存扣减方案
开发语言·数据库·redis·缓存·一致性·读后感
躲在云朵里`1 小时前
更新时对字段的重复校验
数据库·oracle