关联查询在写程序的时候,经常能使用到。
下面是一个非常优质的ThinkPHP3.2中关联查询代码,给了大家一个很好的思路。
收藏下来,以后写程序的时候,可能会用到。
CREATE
TABLE `test_avatar` ( `uid`int(11) unsigned
NOT NULL
DEFAULT '0', `avatar`varchar(255)
NOT NULL
DEFAULT '', PRIMARYKEY
(`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 '', PRIMARYKEY
(`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', PRIMARYKEY
(`id`)) ENGINE=MyISAM
DEFAULT CHARSET=utf8;INSERT
INTO `test_user` VALUES(1,'admin',110);如上三个表:用户头像表、产品表、用户表
怎样在模型中建立关联?
|
1
2
3
4
5
6
7
8
9
10
11
|
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
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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值来跟字段里的内容来比较呢
------解决思路----------------------
用模糊查询吧很优质的代码,相信很多php程序员都可能会用到。
本文介绍了ThinkPHP3.2中如何实现关联查询,并提供了解决在处理数据表中特定字段内容形式问题的SQL语句策略。通过实例演示了在模型中建立关联的方法,以及如何在SQL查询中处理复杂的数据类型。
581

被折叠的 条评论
为什么被折叠?



