/** * @param RankingQuery $rankingQuery * @param string $innerQuerySql * @param string $expected */ private function checkQuery($rankingQuery, $innerQuerySql, $expected) { $query = $rankingQuery->generateRankingQuery($innerQuerySql); $queryNoWhitespace = preg_replace("/\\s+/", "", $query); $expectedNoWhitespace = preg_replace("/\\s+/", "", $expected); $message = 'Unexpected query: ' . $query; $this->assertEquals($queryNoWhitespace, $expectedNoWhitespace, $message); }
private function archiveDayQueryProcess($select, $from, $where, $groupBy, $orderBy, RankingQuery $rankingQuery) { // get query with segmentation $query = $this->getLogAggregator()->generateQuery($select, $from, $where, $groupBy, $orderBy); // apply ranking query if ($rankingQuery) { $query['sql'] = $rankingQuery->generateRankingQuery($query['sql']); } // get result $resultSet = $this->getLogAggregator()->getDb()->query($query['sql'], $query['bind']); if ($resultSet === false) { return; } return $resultSet; }
protected function archiveDayQueryProcess($select, $from, $where, $groupBy, $orderBy, $sprintfField, RankingQuery $rankingQuery = null, $metricsConfig = array()) { $select = sprintf($select, $sprintfField); // get query with segmentation $query = $this->getLogAggregator()->generateQuery($select, $from, $where, $groupBy, $orderBy); // replace the rest of the %s $querySql = str_replace("%s", $sprintfField, $query['sql']); // apply ranking query if ($rankingQuery) { $querySql = $rankingQuery->generateRankingQuery($querySql); } // get result $resultSet = $this->getLogAggregator()->getDb()->query($querySql, $query['bind']); $modified = ArchivingHelper::updateActionsTableWithRowQuery($resultSet, $sprintfField, $this->actionsTablesByType, $metricsConfig); return $modified; }