[Php / MySql] DISTINCT => Dédoublonnage
Résolu/Fermé
ZIG1
crackosse - 22 janv. 2012 à 03:47
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
crackosse - 22 janv. 2012 à 03:47
A voir également:
- Distinct php
- Php distinct - Meilleures réponses
- Php select distinct - Meilleures réponses
- [Php / MySql] DISTINCT => Dédoublonnage ✓ - Forum - PHP
- Regarder tv matchs foot direct streaming gratuit php ✓ - Forum - Cinéma / Télé
- Mysql error in file: /engine/classes/mysql.php at line 53 - Forum - Mozilla Firefox
- Sur quel site voir gratuitement un match en direct ? ✓ - Forum - Internet / Réseaux sociaux
- Alert php ✓ - Forum - PHP
20 réponses
bacchuss
2 déc. 2005 à 15:25
- Messages postés
- 1162
- Date d'inscription
- samedi 13 décembre 2003
- Statut
- Membre
- Dernière intervention
- 6 avril 2009
2 déc. 2005 à 15:25
select distinct(email) from matable;
si tu fais select distinct(email), id, autretruc, autrebidule from matable;
ca ne marchera pas
si tu fais select distinct(email), id, autretruc, autrebidule from matable;
ca ne marchera pas
bacchuss
2 déc. 2005 à 15:36
- Messages postés
- 1162
- Date d'inscription
- samedi 13 décembre 2003
- Statut
- Membre
- Dernière intervention
- 6 avril 2009
2 déc. 2005 à 15:36
pour un email, tu n'as qu'un id et un seul flag ?
si non, comment veux tu qu'il sache quel id il doit choisir
si oui tu fais :
select distinct (email, id, flag) from ....
enfin je crois, de mémoire
si non, comment veux tu qu'il sache quel id il doit choisir
si oui tu fais :
select distinct (email, id, flag) from ....
enfin je crois, de mémoire
ZIG1
2 déc. 2005 à 15:47
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 15:47
Non, je peux avoir un mail pour différent id et flag (il n'a que 2 valeurs)
Mais je viens d'avoir une idée ...
Je peut faire une requête
select distinct(email) from matable;
Puis Select email, id, flag FROM matable Where email=email
Ca pourrait marcher, non ??
Mais je viens d'avoir une idée ...
Je peut faire une requête
select distinct(email) from matable;
Puis Select email, id, flag FROM matable Where email=email
Ca pourrait marcher, non ??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bacchuss
2 déc. 2005 à 15:56
- Messages postés
- 1162
- Date d'inscription
- samedi 13 décembre 2003
- Statut
- Membre
- Dernière intervention
- 6 avril 2009
2 déc. 2005 à 15:56
oui ca ca marche mais ca fait pas mal de requetes...
mais je ne vois pas bien comment tu fais ton filtre.
tu veux tous les email de ta table ou seulement certains ?
tu es sur que ta table est correctement constituée ? bizarre d'avoir la meme @ email plusieurs fois dans la meme table ...
mais je ne vois pas bien comment tu fais ton filtre.
tu veux tous les email de ta table ou seulement certains ?
tu es sur que ta table est correctement constituée ? bizarre d'avoir la meme @ email plusieurs fois dans la meme table ...
ZIG1
2 déc. 2005 à 16:08
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 16:08
Je sais ... effectivement ...
Mais je ne sais pas comment faire autrement ... pour l'instant ...
Pour l'instant je géres mes catégorie avec une liste déroulante ... mais comment faire pour le faire par case à cocher et donc avoir un nombre illimité de catégories par mail ...
Et pourvoir faire des recherches par catégories ...
Je dois pouvoir classer mes mails par catégories et dans ce genre de cas pouvoir les faire apparaitre plusieurs ... dans chaque catégories concernés ....
Mais je ne sais pas comment faire autrement ... pour l'instant ...
Pour l'instant je géres mes catégorie avec une liste déroulante ... mais comment faire pour le faire par case à cocher et donc avoir un nombre illimité de catégories par mail ...
Et pourvoir faire des recherches par catégories ...
Je dois pouvoir classer mes mails par catégories et dans ce genre de cas pouvoir les faire apparaitre plusieurs ... dans chaque catégories concernés ....
ZIG1
2 déc. 2005 à 16:21
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 16:21
j'ai changé mes données pour avoir des données du type
id email categorie1|categorie3|categorie4|
Mais quand je veux afficher mes données classé par catégories ma requête ne fonctionne plus ...
Comment faire ??
id email categorie1|categorie3|categorie4|
Mais quand je veux afficher mes données classé par catégories ma requête ne fonctionne plus ...
Comment faire ??
bacchuss
2 déc. 2005 à 16:30
- Messages postés
- 1162
- Date d'inscription
- samedi 13 décembre 2003
- Statut
- Membre
- Dernière intervention
- 6 avril 2009
2 déc. 2005 à 16:30
hum, la , a froid, sans ton projet devant les yeux, c'est un peu difficile de tout comprendre ...
:-(
:-(
ZIG1
2 déc. 2005 à 16:38
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 16:38
Ok,
J'ai une table avec id, mail, flag, categorie
si j'entre plus d'un numéro dans "catégorie", je dois les insérer comme suit 1|2|4|6 n'est-ce pas ?
Si tel est le cas comment puis je faire une requête en filtrant sur catégorie.
Cet "élèment" que nous venons de rentrer doit aparaître sous les catégorie 1,2,4 et 6 comment faire cette requête ??
J'ai une table avec id, mail, flag, categorie
si j'entre plus d'un numéro dans "catégorie", je dois les insérer comme suit 1|2|4|6 n'est-ce pas ?
Si tel est le cas comment puis je faire une requête en filtrant sur catégorie.
Cet "élèment" que nous venons de rentrer doit aparaître sous les catégorie 1,2,4 et 6 comment faire cette requête ??
bacchuss
2 déc. 2005 à 16:50
- Messages postés
- 1162
- Date d'inscription
- samedi 13 décembre 2003
- Statut
- Membre
- Dernière intervention
- 6 avril 2009
2 déc. 2005 à 16:50
quand tu dis plus d'un numero dans "categorie", cela veut dire que tu inseres plusieurs enregistrements dans ta table
genre:
genre:
id mail flag categorie 1 toto@.. 0 1 1 toto@.. 0 2 1 toto@.. 0 4 et non pas id mail flag categorie 1 toto@.. 0 1,2,4
ZIG1
2 déc. 2005 à 16:58
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 16:58
Si je fais comme dans ta première proposition, je vais me retrouvé avec le même souci de doublon au niveau des mails ...
Et quand j'écrirait ... j'enverrai un certain nombre de mail à la même personne ... et c'est ca que je veux éviter
Et quand j'écrirait ... j'enverrai un certain nombre de mail à la même personne ... et c'est ca que je veux éviter
B@|-|@N
2 déc. 2005 à 17:00
- Messages postés
- 386
- Date d'inscription
- jeudi 15 janvier 2004
- Statut
- Membre
- Dernière intervention
- 7 décembre 2007
2 déc. 2005 à 17:00
Rien compris du tout à ton explication ^_^.
Je vois un truc qui ne va pas dans ta table, tu as une relation n-n entre deux entités, catégorie et email. Une catégorie peut contenir 0 ou plusieurs mails et un mail peut appartenir a 0 ou plusieurs catégories.
je te propose donc de créer 3 tables dont une qui sera la relation entre catégorie et email.
############
#tab_categorie #
#-----------------#
#id_categorie # <- clef primaire
#lib_categorie #
############
############
# tab_mail #
#-------------------#
#id_mail # <- clef primaire
#lib_mail #
############
###############
# tab_mail_categorie #
#------------------------#
# id_mail # _
# id_categorie # _|- clef primaire sur les deux champs
###############
Ensuite pour le code, comme je n'ai pas bien compris ce que tu veux je dirais : tu sors tous tes mails qui appartiennent au moins à une catégorie et tu leur envoies ton message.
Autrement dit :
-----------------
SELECT DISTINCT(lib_mail)
FROM tab_mail, tab_mail_categorie
WHERE tab_mail.id_mail=tab_mail_categorie.id_mail
Bahan
Je vois un truc qui ne va pas dans ta table, tu as une relation n-n entre deux entités, catégorie et email. Une catégorie peut contenir 0 ou plusieurs mails et un mail peut appartenir a 0 ou plusieurs catégories.
je te propose donc de créer 3 tables dont une qui sera la relation entre catégorie et email.
############
#tab_categorie #
#-----------------#
#id_categorie # <- clef primaire
#lib_categorie #
############
############
# tab_mail #
#-------------------#
#id_mail # <- clef primaire
#lib_mail #
############
###############
# tab_mail_categorie #
#------------------------#
# id_mail # _
# id_categorie # _|- clef primaire sur les deux champs
###############
Ensuite pour le code, comme je n'ai pas bien compris ce que tu veux je dirais : tu sors tous tes mails qui appartiennent au moins à une catégorie et tu leur envoies ton message.
Autrement dit :
-----------------
SELECT DISTINCT(lib_mail)
FROM tab_mail, tab_mail_categorie
WHERE tab_mail.id_mail=tab_mail_categorie.id_mail
Bahan
ZIG1
2 déc. 2005 à 17:07
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 17:07
je suis un peu dans ce cas ...
dans le sens où je fonctionne déjà comme ca avec les catégories
mais je ne comprend pas ta table
###############
# tab_mail_categorie #
#------------------------#
# id_mail # _
# id_categorie # _|- clef primaire sur les deux champs
###############
en fait quand j'entre un nouveau contact je dois
entrer son mail dans tab_mail,
choper son id
entrer dans tab_mail_categorie idMail et idCatégorie
C'est ca ??
dans le sens où je fonctionne déjà comme ca avec les catégories
mais je ne comprend pas ta table
###############
# tab_mail_categorie #
#------------------------#
# id_mail # _
# id_categorie # _|- clef primaire sur les deux champs
###############
en fait quand j'entre un nouveau contact je dois
entrer son mail dans tab_mail,
choper son id
entrer dans tab_mail_categorie idMail et idCatégorie
C'est ca ??
B@|-|@N
2 déc. 2005 à 17:14
- Messages postés
- 386
- Date d'inscription
- jeudi 15 janvier 2004
- Statut
- Membre
- Dernière intervention
- 7 décembre 2007
2 déc. 2005 à 17:14
Quand tu entres un nouveau contact, tu vas lui donner une id_mail unique ainsi que lui attribuer une ou plusieurs catégories.
Si tu lui attribues disons 3 catégories différentes, dans la table tab_mail_categorie, tu auras 3 enregistrements.
Exemple :
notre nouveau contact est toto@totomail.com qui aura l'id suivante : 1
Les catégories qui lui sont attribués sont : bubu (1), tutu (2) et lulu (3)
Lors de la saisie de ce nouveau contact, il va falloir insérer dans la table tab_mail_categorie les enregietrements suivants :
1 - 1
1 - 2
1 - 3
L'intéret c'est que tu peux tranquillement changer l'adresse mail de toto, tant que son id ne change pas tu n'auras pas à tout changer dans la table-relation entre mail et catégorie.
Hum hum. Suis-je clair ? ^_^
Bahan
Si tu lui attribues disons 3 catégories différentes, dans la table tab_mail_categorie, tu auras 3 enregistrements.
Exemple :
notre nouveau contact est toto@totomail.com qui aura l'id suivante : 1
Les catégories qui lui sont attribués sont : bubu (1), tutu (2) et lulu (3)
Lors de la saisie de ce nouveau contact, il va falloir insérer dans la table tab_mail_categorie les enregietrements suivants :
1 - 1
1 - 2
1 - 3
L'intéret c'est que tu peux tranquillement changer l'adresse mail de toto, tant que son id ne change pas tu n'auras pas à tout changer dans la table-relation entre mail et catégorie.
Hum hum. Suis-je clair ? ^_^
Bahan
ZIG1
2 déc. 2005 à 15:27
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 15:27
comment je fais si j'ai besoin de 3 champs ??
J'ai besoin d'id et de flag :D
Y a un autre moyen ?
J'ai besoin d'id et de flag :D
Y a un autre moyen ?
ZIG1
2 déc. 2005 à 17:19
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 17:19
Mais l'idMail ne doit pas être auto-incrémenté
ou
tu fais une recherche avant d'entrer les relations ??
ou
tu fais une recherche avant d'entrer les relations ??
B@|-|@N
2 déc. 2005 à 17:23
- Messages postés
- 386
- Date d'inscription
- jeudi 15 janvier 2004
- Statut
- Membre
- Dernière intervention
- 7 décembre 2007
2 déc. 2005 à 17:23
Yep les identifiants des tables tu peux leur mettre un auto-increment.
Dans ce cas, quand tu viens d'insérer un contact, tu prends l'id le plus haut et c'est bon. (Basiquement, hein ? Le mieux est de faire des tests quand même.)
Mais sinon ce que tu dis est même mieux. Faire une recherche après l'insertion (vérifier qu'elle s'est bien déroulé) est une très bonne idée.
Tu en ressorts l'id_mail que tu injectes ensuite dans tab_mail_categorie avec les id_categorie associées.
Bahan
Dans ce cas, quand tu viens d'insérer un contact, tu prends l'id le plus haut et c'est bon. (Basiquement, hein ? Le mieux est de faire des tests quand même.)
Mais sinon ce que tu dis est même mieux. Faire une recherche après l'insertion (vérifier qu'elle s'est bien déroulé) est une très bonne idée.
Tu en ressorts l'id_mail que tu injectes ensuite dans tab_mail_categorie avec les id_categorie associées.
Bahan
ZIG1
2 déc. 2005 à 17:27
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
2 déc. 2005 à 17:27
Mais par contre je ne peux plus les insérer simplement avec un *.sql
ou tout autre export ... il va falloir absolument passer par l'application !!
ou tout autre export ... il va falloir absolument passer par l'application !!
B@|-|@N
2 déc. 2005 à 17:36
- Messages postés
- 386
- Date d'inscription
- jeudi 15 janvier 2004
- Statut
- Membre
- Dernière intervention
- 7 décembre 2007
2 déc. 2005 à 17:36
Mais par contre je ne peux plus les insérer simplement avec un *.sql
Si bien sûr.
Exemple, une fois que tu as insérée tes id par des requêtes de type INSERT.
------------
Bahan
Si bien sûr.
Exemple, une fois que tu as insérée tes id par des requêtes de type INSERT.
------------
SELECT id_mail, id_categorie FROM tab_mail, tab_categorie WHERE lib_mail='toto@totomail.com' AND lib_categorie='lulu' INTO TABLE tab_mail_categorie;
Bahan
ZIG1
5 déc. 2005 à 14:28
- Messages postés
- 1709
- Date d'inscription
- vendredi 7 juillet 2000
- Statut
- Membre
- Dernière intervention
- 24 mars 2009
5 déc. 2005 à 14:28
Allo,
Suite à une longue reflection ... il n'y aura pas de doublon d'email ... Dans le champ IdCategories ... il pourra y avoir plusieurs id et je fait un select avec Like ....
Merci pour l'aide à la reflexion :D
Suite à une longue reflection ... il n'y aura pas de doublon d'email ... Dans le champ IdCategories ... il pourra y avoir plusieurs id et je fait un select avec Like ....
Merci pour l'aide à la reflexion :D
22 janv. 2012 à 03:47