Requete SQL de la mort qui tue (bessoin d'aide)

cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008 - 2 oct. 2003 à 19:11
cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008 - 21 oct. 2003 à 18:35
Bonjour,

Je ne sais pas si c'est possible, je pose ma question on ne sais jamais:

J'ai une table1 avec un champ1 contenant des adresses email avec doublon.

J'ai une seconde table2 avec champ2 contenant des adresses email et des noms de domaine (@domaine.fr).

je voudrait extraire les adresses et domain de table2.champ2 de la table1.champ1

tout en sachant que je doit faire une exctraire avec le parametre "LIKE %email2% a cause des domaines.

Avez-vous une ideé de la requete SQL que je devrait faire

Merci
Olivier

6 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
2 oct. 2003 à 19:44
pas besoin de requete SQL

un simple split suffit

tab = split(email,"@")
name = tab(0)
domain = tab(1)
0
cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008
2 oct. 2003 à 20:34
Je me suis mal exprimé,

Je veux soustraire les donnes de la table2.champ2 de la table1.champ1.

Pour être plus claire: mais table1.champ1 contient 200.000 adresses, la table2.champ2 contient 30.000 adtresses complete ET domaine (qui sont fausse pour être claire). Je doit gardé une trace des adresses fausse, et ne jamais supprimé les adresses original.

pour rien vous caché, je ne veux pas traité cela dans une dim ceci n'étant qu'un début je risque de me retrouvé avec des "out of memory", de plus après cette 1er soustraction j'ai une seconde soustraction a faire.

j'ai vu que l'on pouvais faire table1.champ1 is not table2.champ2 mais cette methode est uniquement pour des records =, ce qui n'est pas mon cas, puisque j'ai a la fois des adresse complete et simple domaine.

Une autre ID.

Merci
Olivier
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
2 oct. 2003 à 22:35
Si je comprends

TABLE 1 =
n1@d2.com
n2@D3.com
n3@F4.com

TABLE2 =
F4.com

resultat =
n3@F4.com

donc la c'est complexe
Pour l'instant je ne vois pas de solution

sauf utiliser les fonctions VB
comme INSTR
0
cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008
3 oct. 2003 à 08:42
c'est pas tout a fait cela:

table1=
n1@d2.com
n2@d3.com
n2@d3.com
n3@f4.com

table2 =
@f4.com
n1@d2.com

Resultat:
n2@d3.com

tu as raison avec un exemple c'est plus claire

Merci
Olivier
0

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

Posez votre question
nass932 Messages postés 14 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 2 février 2006
21 oct. 2003 à 18:29
en utilisant des tables temporaires tu devrait pouvoir reussir à t'en sortir !

n'oublie pas d'utiliser la fonction distinc pour eviter les doublons

tu filtre la table1 vers une tempo1
tu filtre la table2 vers une tempo2

puis tu compare ta tempo1 a ta tempo2 avec tes like !

suis pas sur mais dans le principe ce doit pas etre loin !
dis moi si cela t'a aidé!
0
cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008
21 oct. 2003 à 18:35
Oui, en effet c'est que j'ai fait pour finir, je fait une comparaison entre entre table1 et table2 et sauve la défférence dans temp et après de encore une comaraison entre temp et table3 (j'aivais en fait 2 tables sur une a comparé). C'est juste un peux long.

Merci de ta réponse
Olivier
0
Rejoignez-nous