Requete SQL

  • Auteur de la discussion Auteur de la discussion dudo
  • Date de début Date de début
WRInaute impliqué
Bonjour,

Je cherche a simplifier cette requete, notamment par IN et par un appel global de $secteur,
l'appel des variables est bonne en lecture 2/, mais l'utilisation des | ou l'écriture n'est pas bonne
car rien ne ressort. D'après vous le probleme est où ?

lecture // ecriture: ok

$sql = 'SELECT secteur FROM mode WHERE cat Like "womens clothing" AND (secteur Like "%trench%" OR secteur Like "%blouson%")';

par celle-ci :

$secteur="%trench%|%blouson%";

$sql = 'SELECT secteur FROM mode WHERE secteur IN (secteur="'.$secteur.'") AND (cat="'.$cat.'")


2/ lecture de cette requete et ne fonctionne pas
FROM mode WHERE secteur IN (secteur="%trench%|%blouson%") AND (cat="womens clothing")

Merci
ludo
 
WRInaute impliqué
Serious a dit:
Code:
... where secteur in ('trench','blouson')

Pour le %, c'est une nécessité, maintenant fonctionne toujours pas,
après recherche en revanche fonctionne avec REGEXP mais je n'aime
cette requete moins rapide et consommatrice, donc si vous avez une
idée pour faire avancée, c'est un bon cas
OK:
$secteur="%trench%|%blouson%";

$sql = 'SELECT secteur FROM mode WHERE secteur REGEXP (secteur="'.$secteur.'") AND (cat="'.$cat.'");



HS: pourquoi?

$secteur="%trench%,%blouson%";

$sql = 'SELECT secteur FROM mode WHERE secteur IN (secteur="'.$secteur.'") AND (cat="'.$cat.'")';
 
WRInaute accro
dans le regex, il n'y a pas besoin des %, il me semble.
Sinon la différence entre les 2, c'est que la 1° expression recherche trench ou blouson, alors que la 2° recherche les 2 mots avec une virgule au milieu. Pas évident à trouver :lol:
 
WRInaute impliqué
Leonick a dit:
dans le regex, il n'y a pas besoin des %, il me semble.
Sinon la différence entre les 2, c'est que la 1° expression recherche trench ou blouson, alors que la 2° recherche les 2 mots avec une virgule au milieu. Pas évident à trouver :lol:

Pour les % je n'ai pas essayé, mais je precise que l'objectif est d'obtenir
recherche trench ou blouson, dans les 2 cas, mais je pensais que la 1ere
solution = la deuxieme, donc si je comprend c'est la requete qui est mauvaise.

ludo
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut