2014-04-19 5 views
0
$xyz = mysql_fetch_array(mysql_query('select sum(value) points where userId = $userIdDB'))['suma']; 

Comment cette requête va se retrouver dans zend framework? J'ai besoin de sélectionner la somme des enregistrements de DB comme int. Et une autre question: puis-je faire des requêtes mysql. Je n'ai pas vraiment de connaissances de zend, alors je vous en prie pour une explication complète. Qu'en est-il des connexions mysql dans zend?Zend Framework - requête mysql

Répondre

0

In ZEND

$select = $db->select() 
      ->from('points',array(new Zend_Db_Expr('sum(value)'))) 
      ->where('userId = ?', $userIdDB); 

lors de l'ajout de colonnes d'expression

Colonnes dans les requêtes SQL sont parfois des expressions, pas simplement la colonne noms d'une table. Les expressions ne doivent pas avoir de noms de corrélation ou les guillemets doivent être appliqués. Si votre chaîne de colonnes contient des parenthèses, Zend_Db_Select le reconnaît comme une expression.

Vous pouvez également créer un objet de type Zend_Db_Expr explicitement, à pour empêcher une chaîne d'être traitée comme un nom de colonne. Zend_Db_Expr est une classe minimale qui contient une seule chaîne. Zend_Db_Select reconnaît les objets de type Zend_Db_Expr et les convertit en chaîne, mais n'applique aucune modification, telle que la citation ou les noms de corrélation .

EXAMPLE IN ZEND

// Build this query using Zend_Db_Expr explicitly: 
// SELECT p."product_id", p.cost * 1.08 AS cost_plus_tax 
// FROM "products" AS p 

$select = $db->select() 
      ->from(array('p' => 'products'), 
        array('product_id', 
          'cost_plus_tax' => 
           new Zend_Db_Expr('p.cost * 1.08')) 
        ); 
+0

qui renverra une valeur int de somme (valeur) ou d'une table? – o0skar

+0

Je l'ai réparé maintenant.please l'essayer – underscore

+0

ça marche? – underscore

Questions connexes