我一個yiibie,我有我有一個表命名user_join_event具有id(PK)
ngo_id(FK)
event_id(FK)
date_created
date_modified
爲對象的問題,我想每個月都得到5個用戶ID(在這個表中最重複的)。就像今年1月的前5名用戶,2月前5名用戶等等,然後是今年年底的前5名用戶一樣,每年完成一次後,它應該再次提供來自全月的前5名用戶。請幫助我,如何爲此編寫SQL查詢,謝謝。的Yii:用於獲取頂級用戶每個月和頂級用戶在今年年底SQL查詢
public function actionAllstats()
{
$this->layout='main';
$user=UserJoinEvent::model()->findAll(array(
'condition' => 'YEAR(date_created)=:year and MONTH(date_created)=:month',
'param' => array(':year'=>2015, ':month'=>$yourMonth),
'select'=>'user_id',
'group'=>'user_id',
'order'=>'COUNT(*) DESC',
'limit' => 5
));
$this->render('allstats', array("user"=>$user));
}
,這是我的看法文件
<div>
<?php
foreach($user as $show)
{
for($i = 1 ; $i <=12 ; $i++)
{
if($yourMonth == $i)
{
$model = User::model()->findByAttributes(array('id'=>$show->user_id,));
if (isset($model))
{
echo '<h3>' . $show->user_id . ' - ' . $model->username . '</h3>';
}
else {
echo '<h3>' . $show->user_id . ' - Username not found</h3>';
}
}
}
}
?>
</div>
您認爲哪個日期用於和mnoth和year過濾器? dat_created ?, date_modified? – scaisEdge
月和年結束的第30個日期。 –
NO。我需要知道該字段的名稱.. date_created或date_modified? – scaisEdge