2017-01-18 1 views
0

Как определить, где условие в этом ниже запросе? Сформировать базу данных, за исключением необходимости нулевого значения к показаннымКак определить, где условие (например: userid! = 0) в этом ниже запросе?

private function totalVisitedPagesPerUser() { 
      $query = "SELECT COUNT(*), " . $this->_db->quoteName('customer_name') . "," . 
        "\n MAX(". $this->_db->quoteName('visit_timestamp') . ")," .      $this->_db->quoteName('browser') . "," . 
        $this->_db->quoteName('os') . "," . 
        $this->_db->quoteName('session_id_person') . "," . 
        $this->_db->quoteName('ip') . "," . 
        "\n SUM(" . $this->_db->quoteName('impulse') . ")," . 
        $this->_db->quoteName('geolocation') . 
        "\n FROM (SELECT * FROM #__realtimeanalytics_serverstats " . $this->whereQuery . " ORDER BY `visit_timestamp` DESC) AS INTABLE" . 
        $this->whereQuery . 
        "\n GROUP BY " . $this->_db->quoteName('session_id_person') . 
        "\n ORDER BY " . $this->_db->quoteName('customer_name'); 
      $this->_db->setQuery($query); 
      $results = $this->_db->loadRowList(); 
      if ($this->_db->getErrorNum()) { 
       throw new JRealtimeException(JText::sprintf('COM_JREALTIME_ERROR_RECORDS', $this->_db->getErrorMsg()), 'error'); 
      } 
      return $results; 
     } 
+0

Кто-нибудь там, чтобы решить эту проблему – pradeep

+0

есть ли ваш вопрос: добавить ли в подзапрос или в основной запрос? не могли бы вы прояснить? –

+0

добавить в подзапрос ... в базе данных id, где смешивается с нулем, поэтому мне нужно показать, кроме нулевого значения – pradeep

ответ

0

можно приготовить где переменное условие, проверяя условия перед началом запроса, чем добавить эту переменный в тот момент, как :

$wherecondtion = "Where 1=1"; 
if($condition1){$wherecondtion."AND (add required filter 1)"} 
if($condition2){$wherecondtion."AND (add required filter 2)"} 

ваш подзапрос будет как:

"(SELECT * FROM #__realtimeanalytics_serverstats " . $wherecondtion . " ORDER BY `visit_timestamp` DESC)" 

Является ли это то, что вам нужно, или какой-то вещь другой предмет?

+0

спасибо krishna ............. – pradeep

+0

session_start никогда не вызывал, если пользователь уже существует – pradeep