我有喜歡的表/不喜歡的遊戲:身份證,game_id,類型(喜歡/不喜歡),時間我應該如何在SQL中運行此查詢?
表例如:圖片鏈接
此代碼給我的最後一個星期的遊戲有喜歡,爲了通過他們的喜歡計數:
$limit = 10;
$time = _time() - 60*60*24*7;
$games_id = array();
$games_id_query = $this->db->execQuery("SELECT `game_id`, count(*) as `likes_count` FROM `likes` WHERE `type` = 'like' AND `time` > '{$time}' group by `game_id` order by `likes_count` DESC LIMIT {$limit}");
$games_id_num = $games_id_query->num_rows;
if($games_id_num > 0) {
while($row = $games_id_query->fetch_object()) {
unset($row->likes_count);
$games_id[] = (array) $row;
}
}
我想使這個查詢,只有在上週的喜歡秩序。例如:如果遊戲X有5個喜歡,遊戲Y有6個喜歡,但是遊戲X獲得本週3個喜歡,遊戲Y獲得本週2個喜歡 - 遊戲X將是第一個,遊戲Y將是第二個。
非常感謝!
你能解釋一下你在這裏做了什麼嗎?我不知道什麼是datepart,什麼是order by – user2670497
datepart從任何日期取出周/年/日。按2排序是按第二欄排序的結果。你可以嘗試這個簡單的選擇 像'選擇日期部分(wk,getdate())'周''選擇日期部分(yy,getdate())' – Nilesh
這不是工作夥計。 – user2670497