カテゴリー:
エラー
閲覧数:249 配信日:2017-08-17 09:14
エラー対応
修正前
public function Get1ExitpageRankingSession()
{
$query = "
SELECT `user_id`, `visitor_session_id`,`title`, `request_url`, `http_referer`, `user_agent`, `screen_width`, `screen_height`, `access_datetime`,COUNT(*) AS `count` FROM `access` AS m
WHERE `visitor_session_id` != '' AND NOT EXISTS (
SELECT 1
FROM `access` AS s
WHERE m.`visitor_session_id` = s.`visitor_session_id`
AND m.`access_datetime` < s.`access_datetime`
AND m.`access_datetime`>=date(current_timestamp - interval 1 day)
AND m.`access_datetime` < date(now())
GROUP BY m.`request_url`
ORDER BY `count` DESC
";
return $this->executeFetchAll($query);
}
修正後
public function Get1ExitpageRankingSession()
{
$query = "
SELECT ANY_VALUE(`user_id`) AS user_id, `visitor_session_id`,`title`, `request_url`, `http_referer`, `user_agent`, `screen_width`, `screen_height`, `access_datetime`,COUNT(*) AS `count` FROM `access` AS m
WHERE `visitor_session_id` != '' AND NOT EXISTS (
SELECT 1
FROM `access` AS s
WHERE m.`visitor_session_id` = s.`visitor_session_id`
AND m.`access_datetime` < s.`access_datetime`
AND m.`access_datetime`>=date(current_timestamp - interval 1 day)
AND m.`access_datetime` < date(now())
GROUP BY m.`request_url`
ORDER BY `count` DESC
";
return $this->executeFetchAll($query);
}
ANY_VALUE指定しても解決しない場合は?
一旦、ORDER BYをコメントアウトしてみる
・もしかすると不要な指定かも
※「ORDER BY」も、一意かどうかの判定に利用されるため注意が必要