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

相关推荐
JavaGuide2 分钟前
对标MinIO!全新一代分布式文件系统诞生!
数据库·后端
快乐非自愿9 分钟前
数据库如何处理大量的交易流水记录
数据库·oracle
ServBay19 分钟前
MongoDB 的文档模型与 CRUD 实战
数据库·后端·mongodb
ITMr.罗22 分钟前
深入理解EF Core更新机制(开发中因为省事遇到的问题)
服务器·数据库·c#·.net
梁萌33 分钟前
MySQL索引的使用技巧
数据库·mysql·索引·b+tree
x10n91 小时前
OceanBase 参数对比工具 附源码
数据库·vscode·oceanbase·腾讯云ai代码助手
RestCloud1 小时前
如何用ETL做实时风控?从交易日志到告警系统的实现
数据库·数据仓库·kafka·数据安全·etl·数据处理·数据集成
云和恩墨2 小时前
MySQL和PostgreSQL谁更适合AI时代?
数据库
数据猿2 小时前
【金猿人物展】涛思数据创始人、CEO陶建辉:实现AI时代时序数据库向“数据平台”的转型
大数据·数据库·人工智能·时序数据库·涛思数据
当代红领巾2 小时前
Oracle 表空间扩容
数据库·oracle