当前位置: 首页 > 编程笔记 >

分享ThinkPHP3.2中关联查询解决思路

南宫凯康
2023-03-14
本文向大家介绍分享ThinkPHP3.2中关联查询解决思路,包括了分享ThinkPHP3.2中关联查询解决思路的使用技巧和注意事项,需要的朋友参考一下

不废话了,直接给大家贴代码了,代码很简单,都是比较常见的sql语句,具体内容请看下文。

CREATE TABLE `test_avatar` (
 `uid` int(11) unsigned NOT NULL DEFAULT '0',
 `avatar` varchar(255) NOT NULL DEFAULT '',
 PRIMARY KEY (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test_avatar` VALUES (1,'./Uploads/admin.jpg');

CREATE TABLE `test_pro` (
 `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
 `uid` int(11) unsigned NOT NULL DEFAULT '0',
 `name` varchar(255) NOT NULL DEFAULT '',
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO `test_pro` VALUES (1,1,'产品1'),(2,1,'产品2');
CREATE TABLE `test_user` (
 `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
 `username` varchar(50) NOT NULL DEFAULT '',
 `tel` int(11) unsigned NOT NULL DEFAULT '0',
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test_user` VALUES (1,'admin',110);

如上三个表:用户头像表、产品表、用户表

怎样在模型中建立关联?

class ProModel extends RelationModel{
 protected $_link=array(
 'Avatar'=>array(
 'mapping_type'=>self::HAS_ONE,
 'class_name'=>'Avatar',
 'foreign_key'=>'uid',
 'mapping_fields'=>'avatar',
 'as_fields'=>'avatar',
 ),
  )
}

试过用HAS_ONE、BELONGS_TO、HAS_MANY、MANY_TO_MANY都不行,求大神指点

------解决思路----------------------

Model下建立ProModelModel.class.php

class ProModelModel extends ViewModel { 
 public $viewFields = array(  
 'test_avatar'=>array(
 'id',...
 ),  
 'test_pror'=>array(
 'id',...
 '_on'=>''
 ),  
    'test_pror'=>array(
 'id',...
 '_on'=>''
 ), 
 ); 
}

Thinkphp中SQL语句有关问题及解决办法

请问,在THINKPHP中,数据表里有个字段,字段的内容形式为 {1,2,3,4,5}

那么SQL语句里怎么将获得的ID值来跟字段里的内容来比较呢

------解决思路----------------------

用模糊查询吧

$where = array('该字段'=>array('LIKE', '%' . $ID . '%'));
 类似资料:
  • 本文向大家介绍详解YII关联查询,包括了详解YII关联查询的使用技巧和注意事项,需要的朋友参考一下 一、多表关联的配置 在我们使用 AR 执行关联查询之前,我们需要让 AR 知道一个 AR 类是怎样关联到另一个的。 两个 AR 类之间的关系直接通过 AR 类所代表的数据表之间的关系相关联。 从数据库的角度来说,表 A 和 B 之间有三种关系:一对多(one-to-many,例如 tbl_user

  • 简介 Cabal-DB 的关联数据查询主要用了两个方法:->has('table') 和->belongs('table'), 因为其实数据库关联关系只有两种,一种是拥有(has)另一种是属于(belongs),如: 用户拥有更多个文章 文章拥有多个标签 文章属于一个用户 文章标签关联记录属于一个标签和一篇文章 语法 拥有关系查询语法: $row->has($name, $foreignKeyOr

  • 级联关系是一个数据库实体的概念,有 3 种级联关系,分别是一对一级联、一对多级联以及多对多级联。例如,一个角色可以分配给多个用户,也可以只分配给一个用户。大部分场景下,我们都需要获取角色信息和用户信息,所以会经常遇见以下 SQL。 在级联中存在 3 种对应关系。 一对多的关系,如角色和用户的关系。通俗的理解就是,一家软件公司会存在许多软件工程师,公司和软件工程师就是一对多的关系。 一对一的关系。每

  • 本文向大家介绍mysql一对多关联查询分页错误问题的解决方法,包括了mysql一对多关联查询分页错误问题的解决方法的使用技巧和注意事项,需要的朋友参考一下 xml问价中查询数据中包含list,需要使用collection 这样的查询系统封装的通用分页查询是不对的,所以需要自己sql中加入分页解决 传入参数的时候需要计算 (offset - 1) * limit, limit 总结 以上所述是小编给

  • 主要内容:一、错误案例引入问题,二、多表查询的分类,1.等值连接和非等值连接,2.自连接和非自连接,3.内连接和外连接,三、实现多表查询的语法,1.内连接(INNER JOIN)的实现,2.外连接(OUTER JOIN)的实现,四、UNION的使用,五、7种SQL JOINS的实现,1.代码实现,六、SQL99语法新特性,1.自然连接,2.USING连接关联查询,也称为多表查询,指两个或更多个表一起完成查询操作。 前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字

  • 本文向大家介绍Yii2.0表关联查询实例分析,包括了Yii2.0表关联查询实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Yii2.0表关联查询的方法。分享给大家供大家参考,具体如下: 你可以使用 ActiveRecord 来进行关联查询(比如,从A表读取数据时把关联的B表数据也一起读出来), 在Active Record中,获取关联数据可以像访问主表ActiveRecord对象的