Yii框架连表查询操作示例

(编辑:jimmy 日期: 2025/10/30 浏览:2)

本文实例讲述了Yii框架连表查询操作。分享给大家供大家参考,具体如下:

Join

//表连接
//查询出学生、班级、校区、记录表的所有数据
$data=Jf_record::find()
    ->join('join','jf_stu','jf_record.sid=jf_stu.sid')
    ->join('join','jf_class','jf_stu.cid=jf_class.cid')
    ->join('join','jf_school','jf_class.xid=jf_school.xid')
    ->select('*')
    ->where(['jf_record.re_id'=>$re_id])
    ->asArray()
    ->one();
    echo $data['sname'].'<br>';
    echo $data['sex'].'<br>';
    echo $data['rtime'].'<br>';
    echo $data['cname'].'<br>';
    echo $data['school'].'<br>';

Has

hasOne方法,因为文章对于文章状态来说,是多对一 一对一的关系;

hasMany方法,因为文章对于文章评论来说,是一对多的关系;

例子

模型

//获取部门名字 用于view页面
public function getDept()
{
  return $this->hasOne(Dept::className(), ['dept_id' => 'dept_id']);
}

视图

['attribute'=>'dept_id',
    'label'=>'部门',
    'value'=>'dept.dept_name',
],

显示

Yii框架连表查询操作示例

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。