各位大虾帮帮忙下面这个sql如何用YII拼起来?


SELECT m.* FROM

(select * from mlog where status IN (0,1) and date_sub(now(), interval 24 HOUR) <=created order by member_id,created desc) as m 

group by m.member_id order by count(m.member_id) DESC

以上那sql怎么样用yii实现呀!跪求了!在线等

有木有人,在线的人快来呀!

是呀是呀。。我也碰到这个问题了啊。。。貌似就是用yii的关联不知道怎么实现子查询。。用sql吧又会影响跨数据库的兼容性。

:unsure: :unsure: :unsure: :unsure: :unsure: :mellow: :mellow: :mellow: :mellow:

今天都没有人在!

直接执行不就好了,为什么非要用model呢:

$sql = . . . /your sql/

$data = Yii::app()->db->createCommand( $sql )->query();

刚看了下介绍文档,看来对于这种复杂的sql语句,AR是不适用的。。

那么。。以后要是把数据库进行移动的话,就得改写好多sql语句了。。哎。。鱼和熊掌不可兼得啊。。

:mellow: 你用doctrine吧

select *,count(mlog.member_id) as stat from mlog

where status IN (0,1) 


and date_sub(now(), interval 24 HOUR) &lt;=created 


order by member_id,created desc) 	

group by mlog.member_id order by stat DESC

貌似和上面这句差不多?

。。语句都不对哦。。。多了半边括号啊哥。。而且。你这样获取不到每个人最近发表的博客啊。

给点提示吧。。我yii不是很熟悉啊。。