MYSQL - SELECT
Résolu/Fermé
jean-yvon
Messages postés
108
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
5 juillet 2009
-
10 mars 2009 à 08:01
jean-yvon Messages postés 108 Date d'inscription lundi 4 août 2008 Statut Membre Dernière intervention 5 juillet 2009 - 11 mars 2009 à 11:13
jean-yvon Messages postés 108 Date d'inscription lundi 4 août 2008 Statut Membre Dernière intervention 5 juillet 2009 - 11 mars 2009 à 11:13
Bonjour,
J'ai une bd avec une table et 5 champs.
Il m'arrive d'avoir le même enregistrement sur deux lignes. Comment les différencier dans une requête "select"
select one n'existe pas!
Et si j'écris:
select from ma_table where monchamp1 ='10' and monchamp2 ='12' and monchamp3 ='xxx' ect jusqu'au bout pour les 5 champ: MYSQL me prend tout les enregistrements qui correspondent à ces critères.
comment faire pour n'en avoir qu'un?
merci
@+
JY
J'ai une bd avec une table et 5 champs.
Il m'arrive d'avoir le même enregistrement sur deux lignes. Comment les différencier dans une requête "select"
select one n'existe pas!
Et si j'écris:
select from ma_table where monchamp1 ='10' and monchamp2 ='12' and monchamp3 ='xxx' ect jusqu'au bout pour les 5 champ: MYSQL me prend tout les enregistrements qui correspondent à ces critères.
comment faire pour n'en avoir qu'un?
merci
@+
JY
A voir également:
- MYSQL - SELECT
- Mysql community server - Télécharger - Bases de données
- Reboot and select proper boot device asus - Forum Matériel & Système
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
- Please select boot device - Forum Windows 7
- Reboot and select proper boot device or insert boot media in selected boot device and press a key ✓ - Forum Windows 10
8 réponses
InFiniT.
Messages postés
99
Date d'inscription
lundi 23 février 2009
Statut
Membre
Dernière intervention
3 avril 2009
26
10 mars 2009 à 08:04
10 mars 2009 à 08:04
Bonjour
Si j'ai bien compris avec ta requête cela te renvoi plusieurs résultats les mêmes c'est bien ca?
Si oui en utilisant la commande DISTINCT ca t'evitera d'avoir des doublons.
ex : SELECT DISTINCT (nom_du_champ), ......
Apres je ne sais pas si j'ai bien tout compris :)
Bon courage
Si j'ai bien compris avec ta requête cela te renvoi plusieurs résultats les mêmes c'est bien ca?
Si oui en utilisant la commande DISTINCT ca t'evitera d'avoir des doublons.
ex : SELECT DISTINCT (nom_du_champ), ......
Apres je ne sais pas si j'ai bien tout compris :)
Bon courage
jean-yvon
Messages postés
108
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
5 juillet 2009
10
10 mars 2009 à 08:16
10 mars 2009 à 08:16
Merci InFiniT
je ne connais pas la syntaxe de SELECT DISTINCT et je ne la trouve pas dans la doc mysql. Est-ce que j'abuserais de te la demander?
Merci
@+
JY
je ne connais pas la syntaxe de SELECT DISTINCT et je ne la trouve pas dans la doc mysql. Est-ce que j'abuserais de te la demander?
Merci
@+
JY
InFiniT.
Messages postés
99
Date d'inscription
lundi 23 février 2009
Statut
Membre
Dernière intervention
3 avril 2009
26
10 mars 2009 à 08:29
10 mars 2009 à 08:29
Ba en fait le SELECT DISTINCT ca t'evite de retourner plusieurs réponses les mêmes pour le champ concerné.
C'est à dire que avec tes critères de selections, si tu as plusieurs réponses les mêmes qui s'affichent, à l'aide du distinct elles s'afficheront qu'une fois.
Désolé j'ai un peu de mal à m'expliquer...
J'ai trouver vite fait ca sur internet j'espère que cela pourra t'aider : http://sql.1keydata.com/fr/sql-distinct.php
Sinon hesite pas a poser des questions :)
C'est à dire que avec tes critères de selections, si tu as plusieurs réponses les mêmes qui s'affichent, à l'aide du distinct elles s'afficheront qu'une fois.
Désolé j'ai un peu de mal à m'expliquer...
J'ai trouver vite fait ca sur internet j'espère que cela pourra t'aider : http://sql.1keydata.com/fr/sql-distinct.php
Sinon hesite pas a poser des questions :)
jean-yvon
Messages postés
108
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
5 juillet 2009
10
10 mars 2009 à 14:10
10 mars 2009 à 14:10
merci!
oui, ça éclaire.
Est-ce que je peux écrire "delete distinct monchamp1='100' from matable where monchamp2='2009-10-03'" ce qui permettrait de ne supprimer qu'une seule ligne de monchamp1 contenant 100.
Ou encore comment ne pas supprimer les doublons?
Je cherche mais je ne trouve pas (en plus la syntaxe à l'air différent d'une version à une autre)
merci beaucoup!
@+
JY
oui, ça éclaire.
Est-ce que je peux écrire "delete distinct monchamp1='100' from matable where monchamp2='2009-10-03'" ce qui permettrait de ne supprimer qu'une seule ligne de monchamp1 contenant 100.
Ou encore comment ne pas supprimer les doublons?
Je cherche mais je ne trouve pas (en plus la syntaxe à l'air différent d'une version à une autre)
merci beaucoup!
@+
JY
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
InFiniT.
Messages postés
99
Date d'inscription
lundi 23 février 2009
Statut
Membre
Dernière intervention
3 avril 2009
26
10 mars 2009 à 16:30
10 mars 2009 à 16:30
Pour ne pas supprimer les doublons suffit que tu ne mette pas distinct.... lol
Sinon pour le delete je croi pas que tu en est besoin si tu met en critère de supprimer genre ton champ 1 = "100" et champ 2 = "date" ca te supprimera que les champs concernées.
Sinon je ne vois pas vraiment ce que tu cherche...
Sinon pour le delete je croi pas que tu en est besoin si tu met en critère de supprimer genre ton champ 1 = "100" et champ 2 = "date" ca te supprimera que les champs concernées.
Sinon je ne vois pas vraiment ce que tu cherche...
jean-yvon
Messages postés
108
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
5 juillet 2009
10
10 mars 2009 à 18:27
10 mars 2009 à 18:27
bonsoir aux deux et aux autres!
je n'ai pas de clef.(autrement cela serait facile).
Donc, j'ai une base de données simple un champ "date", un champ "montant", un champ "payement" et un champ "ventilation".
Il arrive que le même jour ma femme et moi faisons un retrait identique donc tous les champ de la base sont remplie de la même façon. il y a aussi deux prélèvements d'assurance du même montant qui arrive le même jour.
je ne veux pas supprimer ces doublons en même temps parce que la banque ne les mets pas forcement sur le même bordereau et comme j'aime avoir des comptes justes, je voudrais trouver une requête qui ne m'en supprime qu'un.
J'avais pensé ça: delete(select distinct FROM matable WHERE matable.date='" & madate1 & "' AND matable.montant='" & monmontant & "....ect)
je ne pense pas que mysql supporte cette syntaxe. Voilà ou j'en suis! j'avoue que je sèche.....
@+
JY
je n'ai pas de clef.(autrement cela serait facile).
Donc, j'ai une base de données simple un champ "date", un champ "montant", un champ "payement" et un champ "ventilation".
Il arrive que le même jour ma femme et moi faisons un retrait identique donc tous les champ de la base sont remplie de la même façon. il y a aussi deux prélèvements d'assurance du même montant qui arrive le même jour.
je ne veux pas supprimer ces doublons en même temps parce que la banque ne les mets pas forcement sur le même bordereau et comme j'aime avoir des comptes justes, je voudrais trouver une requête qui ne m'en supprime qu'un.
J'avais pensé ça: delete(select distinct FROM matable WHERE matable.date='" & madate1 & "' AND matable.montant='" & monmontant & "....ect)
je ne pense pas que mysql supporte cette syntaxe. Voilà ou j'en suis! j'avoue que je sèche.....
@+
JY
InFiniT.
Messages postés
99
Date d'inscription
lundi 23 février 2009
Statut
Membre
Dernière intervention
3 avril 2009
26
11 mars 2009 à 08:10
11 mars 2009 à 08:10
Bonjour
Je viens de trouver sur internet un petit tutorial qui pourrait t'aider avec la syntaxe DELETE.Normalement tu n'as pas besoin de mettre de SELECT après il me semble.
Voila j'espère que cela pourra t'aider :)
https://phpsources.net/tutoriel-delete.htm
Je viens de trouver sur internet un petit tutorial qui pourrait t'aider avec la syntaxe DELETE.Normalement tu n'as pas besoin de mettre de SELECT après il me semble.
Voila j'espère que cela pourra t'aider :)
https://phpsources.net/tutoriel-delete.htm
jean-yvon
Messages postés
108
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
5 juillet 2009
10
11 mars 2009 à 11:13
11 mars 2009 à 11:13
Salut,
ça y est! J'ai la solution!
la requête que voici enlève un enregistrement même si il en existe plusieurs identique.
delete from matable where matable.monchamp1 ="mavaleur" limit 1
c'est bête, c'est écrit en gros dans la syntaxe mysql.
Je vous remercie tous les deux de m'avoir aidé.
@+
JY
ça y est! J'ai la solution!
la requête que voici enlève un enregistrement même si il en existe plusieurs identique.
delete from matable where matable.monchamp1 ="mavaleur" limit 1
c'est bête, c'est écrit en gros dans la syntaxe mysql.
Je vous remercie tous les deux de m'avoir aidé.
@+
JY