• Модуль: statistic
  • Путь к файлу: ~/bitrix/modules/statistic/classes/mysql/adv.php
  • Класс: CAdv
  • Вызов: CAdv::GetAnalysisGraphArray_SQL
static function GetAnalysisGraphArray_SQL($strSqlSearch, $DATA_TYPE)
{
	$DB = CDatabase::GetModuleConnection('statistic');
	switch ($DATA_TYPE)
	{
		case "EVENT_SUMMA":
		case "EVENT":
		case "EVENT_BACK":
		case "EVENT_MONEY_SUMMA":
		case "EVENT_MONEY":
		case "EVENT_MONEY_BACK":
			$strSql = "
				SELECT
					".$DB->DateToCharFunction("D.DATE_STAT","SHORT")." DATE_STAT,
					DAYOFMONTH(D.DATE_STAT) DAY,
					MONTH(D.DATE_STAT) MONTH,
					YEAR(D.DATE_STAT) YEAR,
					sum(D.COUNTER) EVENTS,
					sum(D.COUNTER_BACK) EVENTS_BACK,
					sum(D.MONEY) MONEY,
					sum(D.MONEY_BACK) MONEY_BACK,
					D.ADV_ID,
					A.REFERER1,
					A.REFERER2
				FROM
					b_stat_adv_event_day D
				INNER JOIN b_stat_event E ON (E.ID = D.EVENT_ID)
				INNER JOIN b_stat_adv A ON (A.ID = D.ADV_ID)
				WHERE
					$strSqlSearch
				GROUP BY
					D.DATE_STAT, D.ADV_ID, A.REFERER1, A.REFERER2
				ORDER BY
					D.DATE_STAT
				";
			break;
		default:
			$strSql = "
				SELECT
					".$DB->DateToCharFunction("D.DATE_STAT","SHORT")."	DATE_STAT,
					DAYOFMONTH(D.DATE_STAT)					DAY,
					MONTH(D.DATE_STAT)					MONTH,
					YEAR(D.DATE_STAT)					YEAR,
					max(D.GUESTS_DAY)					GUESTS,
					max(D.NEW_GUESTS)					NEW_GUESTS,
					max(D.FAVORITES)					FAVORITES,
					max(D.C_HOSTS_DAY)					C_HOSTS,
					max(D.SESSIONS)						SESSIONS,
					max(D.HITS)						HITS,
					max(D.GUESTS_DAY_BACK)					GUESTS_BACK,
					max(D.FAVORITES_BACK)					FAVORITES_BACK,
					max(D.HOSTS_DAY_BACK)					HOSTS_BACK,
					max(D.SESSIONS_BACK)					SESSIONS_BACK,
					max(D.HITS_BACK)					HITS_BACK,
					D.ADV_ID,
					A.REFERER1,
					A.REFERER2
				FROM
					b_stat_adv_day D
				INNER JOIN b_stat_adv A ON (A.ID = D.ADV_ID)
				WHERE
					$strSqlSearch
				GROUP BY
					D.DATE_STAT, D.ADV_ID, A.REFERER1, A.REFERER2
				ORDER BY
					D.DATE_STAT
				";
			break;
	}
	return $strSql;
}