codeigniter的多表查询!用过的给我说说

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了codeigniter的多表查询!用过的给我说说相关的知识,希望对你有一定的参考价值。

表一:mm_transport_goods(商品信息表)
mm_transport_goods.from_province,
mm_transport_goods.from_city,
mm_transport_goods.from_district,
mm_transport_goods.to_province,
mm_transport_goods.to_city,
mm_transport_goods.to_district,
mm_transport_goods.goods_weight,
mm_transport_goods.publish_user_id,
mm_transport_goods.car_type,
mm_transport_goods.car_length,
mm_transport_goods.car_load,
mm_transport_goods.created,
表二:mm_user_base(用户信息表)
mm_user_base.name,
mm_user_base.head_pic
表三:mm_region(地址表)
这里的id对应第一张表的前6个字段
要给他们做一个多表查询在用循环!没用过这个框架!求大神帮忙

1) $this->db->where(‘MATCH (field) AGAINST (“value”)’, NULL, FALSE) 如果把$this->db->where() 接受可选的第三个参数设置为 FALSE, CodeIgniter 将不会为那些包含反勾号的字段名或表名提供保护。 2) $this->db->or_where() 本函数 参考技术A

CI 框架是支持原生的sql语句的,你描述清楚你自己的需求,写出对应的sql语句就可以啊。

$sql = "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?";
$this->db->query($sql, array(3, 'live', 'Rick'));

追问

$this->db->join('mm_user_base', 'mm_user_driver.user_id = mm_user_base.user_type(这个表 0为一个类型!1为一个类型~!等于其中一个类型)' , 'left');

追答

说实在的我真不知道你描述的是个啥玩意儿, 看起来都像是不会用left join?

select * from db1 alias1 where condition left join db2 alias2 on alias1.column =alias2.column;

追问

CI框架的写法

Oracle中的多表查询

多表查询

笛卡尔积: N*M

 

使用关联字段消除笛卡尔积的多余数据:

SELECT EMP.*,DEPT.DNAME,DEPT.LOC FROM EMP, DEPT

WHERE EMP.DEPTNO=DEPT.DEPTNO;

 

多表查询一定要有关联字段

SELECT

E.ENAME,E.JOB,E.HIREDATE,D.DEPTNO,D.LOC

FROM EMP  E ,DEPT D

WHERE E.DEPTNO = D.DEPTNO;

 

UNION-集合操作

UNION将两个或两个以上的查询结果合并到一个结果中,查询结果中会剔除所有重复记录。

SELECT * FROM EMP

UNION

SELECT * FROM EMP WHERE DEPTNO=10 ;

 

UNION ALL将两个或多个查询结果放到一个结果中,保留所有记录(相对于UNION)。

SELECT * FROM EMP

UNION ALL

SELECT * FROM EMP WHERE DEPTNO=10 ;

 

INTERSECT 求出多个结果的共有数据(交集)

SELECT * FROM EMP

INTERSECT

SELECT * FROM EMP WHERE DEPTNO=10 ;

 

MINUS 用第一个结果减去第二个结果(差集)

SELECT * FROM EMP

MINUS

SELECT * FROM EMP WHERE DEPTNO = 10;

 

以上是关于codeigniter的多表查询!用过的给我说说的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis的多表(多对多)查询

小程序中的多表联合查询

MySQL的多表关联查询

mysql的多表查询

resultMap详解(包含多表查询)

MyBatis的多表联合查询