Requête SELECT sur une partie de colonne
Bonjour,
Je n'ai pas trouvé de nom approprié pour ma question, mais je voudrais savoir comment exécuter une requête sur une partie de ma colonne.
j'ai une table qui contient :
Code:
1 2
| INSERT INTO `installateurs` (`id`, `nom`, `cp`, `ville`, `tel`, `mobile`, `fax`, `adresse`, `email`, `secteur`) VALUES
(1, 'BIMER', '94120', 'Fontenay-sous-Bois', '01 00 00 00 52', '06 00 00 00 52', '01 00 00 00 52', '19, Avenue Stalingrad', 'info@monsite.fr', '94120, 93310, 93330, 93360'); |
J'effectue une requête sur le secteur réservée à cette personne :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| if(isset($_POST['submit'])){
if($_POST['cp']){
$secteur = $_POST['cp'];
$em = $this->getDoctrine()->getEntityManager();
$query = $em->createQuery(
'SELECT s
FROM ExtranetGeneralBundle:installateurs s
WHERE s.secteur = :secteur'
)->setParameter('secteur', $secteur);
$serruriers = $query->getResult();
}
else echo "<div class=\"erreur\">Veuillez saisir un code postal.</div>";;
} |
Je voudrais savoir comment faire pour que ma requête sélectionne une parti de la colonne "SECTEUR" et non la totalité ?
Exemple : $_POST['cp'] = '94120';
J'ai essayé avec :
Code:
)->setParameter('secteur', "%".$secteur."%");
Mais ça ne fonctionne pas non plus.
Ps: il y a la solution de créer une ligne pour chaque secteur mais je voudrais me passer de celle-ci.
j'espère avoir été assez explicite, et merci pour vos réponses futures.
EDIT : j'ai avancé, la requête retourne maintenant le premier paramètre '94120' mais ne prend pas les autres :
Code:
)->setParameter('secteur', "%"+$secteur+"%");