Yii Framework Forum: Come Imposto Una Query Con Cdbcriteria - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Come Imposto Una Query Con Cdbcriteria Rate Topic: -----

#1 User is offline   fdilecce 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 51
  • Joined: 03-September 12

Posted 08 July 2013 - 04:57 PM

ciao a tutti,
ho ancora bisogno del vostro aiuto perchè non ho capito come impostare le query con CDbCriteria.
Ho una tabella con un campo id (chiave) un campo inizio (data) ed un campo risposta (data) ed altri campi.
Ho bisogno di impostare questa query:
select count(id) AS 'num_nonrisposte',month(inizio) as mese from chiamate where isnull(risposta) group by month(inizio);

che mi restituisce una tabella con due valori per ogni mese: il mese ed il numero di campi con risposta=NULL in quel mese.

Ho provato in diversi modi ma non ho capito come utilizzare CDbCriteria (o se utilizzare un'altro modo)
Una prova che ho fatto:
$criteria= new CDbCriteria();
$criteria = array("select" => "count (id) as num_nonrisposte,month(inizio) as mese ", "condition" => "isnull(risposta)", "group" => "month(inizio)");
$righe_non_risposte = Chiamate::model()->findAll($criteria);


ma ovviamente non esiste il metodo count.
Qualcuno mi aiuta?
grazie in anticipo.
0

#2 User is offline   sensorario 

  • Elite Member
  • Yii
  • Group: Moderators
  • Posts: 1,986
  • Joined: 07-September 10
  • Location:Cesena (Italy)

Posted 08 July 2013 - 06:42 PM

In che senso non esiste il metodo count? Quali errori ricevi, se ne ricevi.
0

#3 User is offline   fdilecce 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 51
  • Joined: 03-September 12

Posted 09 July 2013 - 03:20 AM

si ho un errore (dbpbxluc è il db):

exception 'CDbException' with message 'CDbCommand ha riportato un errore nell'esecuzione della query SQL: SQLSTATE[42000]: Syntax error or access violation: 1305 FUNCTION dbpbxluc.count does not exist. The SQL statement executed was: SELECT count (id) as num_nonrisposte,month(inizio) as mese FROM `chiamate` `t` WHERE isnull(risposta) GROUP BY month(inizio)' in /home/yiiframework/framew/framework/db/CDbCommand.php:528
0

#4 User is offline   Nicola 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 180
  • Joined: 13-March 11
  • Location:Italy

Posted 10 July 2013 - 05:51 AM

perché c'è uno spazio tra count e (id), scrivi count(id) non count (id)

$criteria= new CDbCriteria();
$criteria = array("select" => "count(id) as num_nonrisposte,month(inizio) as mese ", "condition" => "isnull(risposta)", "group" => "month(inizio)");
$righe_non_risposte = Chiamate::model()->findAll($criteria);

My company: DigiSin
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users