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,其他不用做

相关推荐
RestCloud21 分钟前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence2 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger9 小时前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥21 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud1 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术1 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
可涵不会debug1 天前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom1 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*1 天前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
Slaughter信仰1 天前
深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十章知识点问答(10题)
java·jvm·数据库