[SQL] Recherche partielle dans un champ

Résolu/Fermé
sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 - 10 janv. 2008 à 10:10
 Fred - 1 août 2009 à 17:21
Bonjour à tous,
Je viens de me lancer dans le SQL et après quelques recherches il y a un problème que je n'arrive pas à résoudre.
Je vais prendre un exemple pas forcément pertinent mais qui permet de bien comprendre mon problème :
dans une de mes tables j'ai un champ NAME qui contient des noms de personnes sous la forme NOM_PRENOM. J'aurais aimé savoir si il était possible de lancer une requète SQL qui sélectionnerai toutes les personnes ayant le même NOM sans tenir compte de _PRENOM (une espèce de condition WHERE 'contient au moins NOM')

Je sais bien que mon exemple n'est pas super étant donné qu'il est très simple de créer 2 tables, une nom, l'autre prénom et de les lier mais je suis dans un cas où je ne peux pasl e faire, j'ai des données sous forme XXX_YYY et j'ai absolument besoin de récupérer tous les XXX. Ce n'est pas moi qui l'ai créé et la DB fait plusieurs milliers d'entrées donc pas question de toute la réécrire.

Merci d'avance
A voir également:

7 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
10 janv. 2008 à 10:13
Pourquoi ne pas avoir mis nom et prénom dans des colonnes séparées ?

Tu pourrais faire WHERE NOM like "%pierre%"
5
sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
10 janv. 2008 à 10:42
En fait la table ne s'appelle pas NAME et les contenus ne sont pas NOM_PRENOM
Ce sont des termes techniques très complexes et j'ai simplifier cela pour que ça soit plus simple à comprendre mais étant donné que la structure est XXXX_YYYYY cela revient exactement au même.
Initialement les 2 champs n'ont pas été créés car à l'époque il n'y avait aucune utilité à le faire mais je suis en train de reprendre complètement toute la DB et aujourd'hui ça devient quasi obligatoire de le faire.

Je vais essayer WHERE like "%....%" et dès que j'ai la réponse je repasse
1
sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
10 janv. 2008 à 10:48
Ca fonctionne merci beaucoup :D

PS. Je viens de m'apercevoir que le titre de la discussion n'est que [SQL] je sais pas pourquoi il a pas pris tout mon titre, je suis désolé pour cela mais j'arrive pas à le changer
1
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
10 janv. 2008 à 10:50
Ok.

Pour le titre, dis-moi ce que tu veux mettre, le je corrigerai.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
10 janv. 2008 à 11:08
Ben initialement j'avais mis [SQL]"arguments" de WHERE mais bon je sais pas si on peut vraiment parler d'argument ici.
C'est comme tu veux, si ce titre te va, tu peux le choisir ou alors je laisse libre cours à ton imagination
0
akvicky Messages postés 3 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 20 février 2009
20 févr. 2009 à 16:26
je recherche certaines personnes de novembre 2008 a fevrier 2009
0
Une solution c'est de sauver ta table dans un fichier de format csv. Ensuite tu ouvres de nouveau le fichier csv dans access (import), mais dans le wizard d'importation tu définis une colonne avec le signe "_". Access va donc t'importer 2 colonnes : l'une pour les prenoms, l'autre pour les noms.
0