Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1000 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [oracle] récupérer un nom de domaine a partir de l'email ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[oracle] récupérer un nom de domaine a partir de l'email ?

n°1642375
veryfree
Posté le 13-11-2007 à 18:22:22  profilanswer
 

Hello,
j'essaye de recupérer des nom de domaines a partir d'emails le tout en full sql:

 

SELECT  email, substr( substr(email,INSTR(email,'@')+1) ,0,INSTR(substr(email,INSTR(email,'@')+1),'.')-1) as ndd
from hm_newsletter_reading hnr,membres_nl pm
WHERE hnr.UIDKW=pm.UIDKW
AND hnr.ID_NEWSLETTER=247

 

ceci fonctionne mais de nombreuse interrogations subsistent.

 

On peux voir que des fragments de la req se repetent ,j'ai tenté d'utiliser des alias et oracle ( 10g ) n en veux pas ! :

 
Citation :

 

Error starting at line 1 in command:

 

SELECT  substr(email,INSTR(email,'@')+1) as startndd ,substr( startndd ,0,INSTR(startndd,'.')-1) as ndd
from hm_newsletter_reading hnr,membres_nl pm
WHERE hnr.UIDKW=pm.UIDKW
AND hnr.ID_NEWSLETTER=247

 

Error at Command Line:1 Column:80
Error report:
SQL Error: ORA-00904: "STARTNDD": invalid identifier
00904. 00000 -  "%s: invalid identifier"
*Cause:    
*Action:

 

J'aimerai aussi pouvoir faire des counts pour connaitre le nombre d'occurence pour un nom de domaine:

 

sous mysql j'aurai fait un truc du style:

 

select count(*), substr( substr(email,INSTR(email,'@')+1) ,0,INSTR(substr(email,INSTR(email,'@')+1),'.')-1) as ndd
from mesTables
group by ndd

 

la encore il rejete mon alias ...

 

quelqu' un pour m'eclairer  :sweat: ?


Message édité par veryfree le 13-11-2007 à 18:25:36
mood
Publicité
Posté le 13-11-2007 à 18:22:22  profilanswer
 

n°1642379
veryfree
Posté le 13-11-2007 à 18:39:54  profilanswer
 

Pour les stats par nom de domaine j'ai trouvé:

Code :
  1. SELECT  count(*) as tot,substr( substr(email,INSTR(email,'@')+1) ,0,INSTR(substr(email,INSTR(email,'@')+1),'.')-1)
  2. from hm_newsletter_reading hnr,membres_it pm
  3. WHERE hnr.UIDKW=pm.UIDKW
  4. AND hnr.ID_NEWSLETTER=29
  5. group by substr( substr(email,INSTR(email,'@')+1) ,0,INSTR(substr(email,INSTR(email,'@')+1),'.')-1)
  6. having count(*)>10
  7. order by tot desc


 
j'imagine qu'il met en cache son calcul sinon ce sera inexploitable en prod.
si quelqu'un peux confirmer ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [oracle] récupérer un nom de domaine a partir de l'email ?

 

Sujets relatifs
[Oracle] Tri personnalisé sur colonne[resolu] - Recuperer nom fichier selectionné dans une listview !
Recuperer barre d'adresse firefox C#Récupérer une base de donnée
recuperer valeur selectionnée balise selectOracle et vérification du remplissage des TableSpace ?
[Active Directory / LDAP][Récupération d'adresses emails du domaine]comment recuperer les donnees d'un fichier php dans flash?
[PG] Récupérer plusieurs fois plusieurs morceaux d'une tableRécupérer valeur d'une clé de registre
Plus de sujets relatifs à : [oracle] récupérer un nom de domaine a partir de l'email ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR