J'ai des problèmes pour mettre en oeuvre une requête me permettant
d'extraire des données qui contiennent un mot entier déterminé.
Par exemple à l'aide d'un SELECT, je voudrais retrouver toutes les
lignes qui ont dans MON_CHAMP le mot 'Lisa'. Mais je ne veux pas les
les lignes qui contiennent 'Elisabeth' ni 'lisa'
J'ai essayé un truc du style :
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE
'%[^A-Za-z0-9]Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE 'Lisa[^A-Za-z0-9]%'
OR MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa'
mais bon ... c'est pas terrible et ça gère pas la casse (à moins que
ce soit du au classement que j'utilise : French_CI_AS ?)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Laurent Moreau
Comme cela je pense:
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE '%_[^A-Za-z0-9]Lisa_[^A-Za-z0-9]%'
Je pense que les OR sont inutiles car les cas debut ou fin sont compris dans celui-ci.
Je n'ai pas testé.
Laurent.
"JoelTanter" wrote in message news:
Bonjour,
J'ai des problèmes pour mettre en oeuvre une requête me permettant d'extraire des données qui contiennent un mot entier déterminé.
Par exemple à l'aide d'un SELECT, je voudrais retrouver toutes les lignes qui ont dans MON_CHAMP le mot 'Lisa'. Mais je ne veux pas les les lignes qui contiennent 'Elisabeth' ni 'lisa'
J'ai essayé un truc du style :
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE 'Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa'
mais bon ... c'est pas terrible et ça gère pas la casse (à moins que ce soit du au classement que j'utilise : French_CI_AS ?)
Merci de m'apporter vos lumières :-)
Comme cela je pense:
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE
'%_[^A-Za-z0-9]Lisa_[^A-Za-z0-9]%'
Je pense que les OR sont inutiles car les cas debut ou fin sont compris dans
celui-ci.
Je n'ai pas testé.
Laurent.
"JoelTanter" <joeltanter@yahoo.fr> wrote in message
news:1a19aa6e.0409072354.4d2656d7@posting.google.com...
Bonjour,
J'ai des problèmes pour mettre en oeuvre une requête me permettant
d'extraire des données qui contiennent un mot entier déterminé.
Par exemple à l'aide d'un SELECT, je voudrais retrouver toutes les
lignes qui ont dans MON_CHAMP le mot 'Lisa'. Mais je ne veux pas les
les lignes qui contiennent 'Elisabeth' ni 'lisa'
J'ai essayé un truc du style :
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE
'%[^A-Za-z0-9]Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE 'Lisa[^A-Za-z0-9]%'
OR MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa'
mais bon ... c'est pas terrible et ça gère pas la casse (à moins que
ce soit du au classement que j'utilise : French_CI_AS ?)
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE '%_[^A-Za-z0-9]Lisa_[^A-Za-z0-9]%'
Je pense que les OR sont inutiles car les cas debut ou fin sont compris dans celui-ci.
Je n'ai pas testé.
Laurent.
"JoelTanter" wrote in message news:
Bonjour,
J'ai des problèmes pour mettre en oeuvre une requête me permettant d'extraire des données qui contiennent un mot entier déterminé.
Par exemple à l'aide d'un SELECT, je voudrais retrouver toutes les lignes qui ont dans MON_CHAMP le mot 'Lisa'. Mais je ne veux pas les les lignes qui contiennent 'Elisabeth' ni 'lisa'
J'ai essayé un truc du style :
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE 'Lisa[^A-Za-z0-9]%' OR MON_CHAMP LIKE '%[^A-Za-z0-9]Lisa'
mais bon ... c'est pas terrible et ça gère pas la casse (à moins que ce soit du au classement que j'utilise : French_CI_AS ?)
Merci de m'apporter vos lumières :-)
Jean-Yves
Merci Laurent.
J'ai testé, ça ne marche pas :-(
"Laurent Moreau" a écrit dans le message de news:chpq8i$g7n$
Comme cela je pense:
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE '%_[^A-Za-z0-9]Lisa_[^A-Za-z0-9]%'
Je pense que les OR sont inutiles car les cas debut ou fin sont compris
dans
celui-ci.
Je n'ai pas testé.
Laurent.
Merci Laurent.
J'ai testé, ça ne marche pas :-(
"Laurent Moreau" <l.moreau@SUPPRIMERCECIsystonic.fr> a écrit dans le message
de news:chpq8i$g7n$1@s5.feed.news.oleane.net...
Comme cela je pense:
SELECT MON_CHAMP FROM MY_TABLE WHERE MON_CHAMP LIKE
'%_[^A-Za-z0-9]Lisa_[^A-Za-z0-9]%'
Je pense que les OR sont inutiles car les cas debut ou fin sont compris