Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 01-02-2010 10:42:36

enzostar
Membre
Date d'inscription: 14-01-2010
Messages: 88

recherche dans une table enfonction d'un champ (clause where)

Bonjour,
j'aimerais créer une fonction qui me renvoie un tableau d'objet dont l'un des attributs est null.
En d'autres termes j'aimerais faire une requete sql select * from maTable where Attribut = null (l'attribut n'étant pas la clé primaire)
Comment créer cette fonction mais aussi ou la creer ?

Merci

Hors ligne

 

#2 01-02-2010 22:17:40

nosferapti
Membre
Date d'inscription: 10-01-2010
Messages: 40

Re: recherche dans une table enfonction d'un champ (clause where)

essaye ça :

Code:

$gestionnaireTable->select()->where('ISNULL(colonne)')

GNAP !

Hors ligne

 

#3 02-02-2010 10:18:38

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: recherche dans une table enfonction d'un champ (clause where)

Hello,

Je dirais :

Code:

$gestionnaireTable->select()->where(new Zend_Db_Expr('colonne is null'));

@+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#4 02-02-2010 10:56:24

enzostar
Membre
Date d'inscription: 14-01-2010
Messages: 88

Re: recherche dans une table enfonction d'un champ (clause where)

Cela serait-t-il bon ?
$demande=new Default_Model_DbTable_Demande();
$demandes=$demande->select()->where(new Zend_Db_Expr('Reponse is null'));
j'ai un doute car la variable $demandes est vide alors que ça ne devrait pas être le cas.

Hors ligne

 

#5 02-02-2010 11:39:46

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: recherche dans une table enfonction d'un champ (clause where)

$demande != $demandes  <= le "s"


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#6 02-02-2010 11:50:51

enzostar
Membre
Date d'inscription: 14-01-2010
Messages: 88

Re: recherche dans une table enfonction d'un champ (clause where)

$demande représente la table Demande et $demandes représente les résultats de ma requête.
Je ne vois pas en quoi ce ne serait pas bon donc j'accepte volontiers les remarques.
C'était plus l'expression qui me posait question.
La syntaxe est-elle bonne ? (mon champ dans cette table s'appelle Reponse).

Et comment faire pour ajouter une autre clause where ?
Merci

Dernière modification par enzostar (02-02-2010 13:23:39)

Hors ligne

 

#7 02-02-2010 14:10:12

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: recherche dans une table enfonction d'un champ (clause where)

Oups mal lu. Dsl.

Code:

$demande=new Default_Model_DbTable_Demande();
$demandes=$demande->select()->where(new Zend_Db_Expr('ISNULL(Reponse)'));

ou

Code:

$demande=new Default_Model_DbTable_Demande();
$demandes=$demande->select()->where("Reponse = ''"));

Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#8 02-02-2010 14:44:57

enzostar
Membre
Date d'inscription: 14-01-2010
Messages: 88

Re: recherche dans une table enfonction d'un champ (clause where)

Je m'arrache les cheveux, cela ne fonctionne pas.
comment pourrais-je faire une requete du style "select * from DEMANDE where Reponse='e' order by Num_Ticket" avec des classes
Default_Model_DbTable_Demande extends Zend_Db_Table_Abstract et Default_Model_Demande.

Merci pour votre aide

Dernière modification par enzostar (03-02-2010 11:08:24)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages