我正在为我的php项目使用codeigniter,但我没有多少经验。所以,请帮助我。
我有两个数据库。 1. Kalix2 2.星号
在这两个数据库中我都有一些表格。我想从两个不同的数据库连接表。我有以下查询,它在后端工作正常,但我不知道如何使用Active记录实现它。
SELECT a.CompanyName, sum(ceil((b.billsec)/(c.Call_Limit*60))) as totalcall,
hour(b.calldate) as use_hour FROM Kalix2.ph_Companies a
INNER JOIN Asterisk.cdr b ON b.clid LIKE CONCAT('%', a.CompanyName, '%')
INNER JOIN Kalix2.ph_Plans c ON c.Comp_ID= a.Comp_ID
where date(b.calldate)>='2013-01-15' and date(b.calldate)<='2013-1-20'
and c.Plan_Type='Per_Call' and a.CompanyName='ABCD'
group by hour(b.calldate);
请帮我将此查询转换为有效的记录格式。
答案 0 :(得分:0)
如果需要,您应该能够将其转换为活动记录,但只需将其转换为查询绑定即可获得更好的性能。常见错误是尝试从多个类运行查询:
$this->db1
$this->db2
这不起作用,因为运行$ this-&gt; db1-&gt; get()因为它只知道db1中的数据而不是db2中的数据。详细地将database.table信息保存在连接中,只使用一个db对象,并使用分析器调试查询生成,你应该很好。