HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

E-mail címek csoportosítása


Példaprogram letöltése

9678 bájt

Egy e-mail címeket tároló adattáblában rengeteg módja van annak, hogy megállapítsuk, hány darab e-mail cím tartozik egy domain-hez, vagyis hány cím végződik ugyanarra a kifejezésre. Cikkünkben egy olyan módszert valósítunk meg, mely egy SQL-utasítás kiadásával ad választ a fenti kérdésre. A megoldásban kilistázzuk az egyes címtípusokhoz tartozó darabszámot.

A példához szükséges a MailDb adatbázis, melyet a mellékelt Run_script.cmd BATCH állomány lefuttatásával hozhatunk létre. A MailDb.sql script 5. sorában adja meg helyesen a létrehozandó adatbázisfájlok mappájának nevét és elérési útvonalát.
A megoldás tehát egyetlen SQL-utasítás, melyben fel kell használnunk két beépített metódust. Annak eldöntésére, hogy melyik e-mail cím melyik tartományba tartozik, először ki kell hámoznunk a címből a ’@’ karakter utáni karakterláncot.
A ’@’ karakter helyének meghatározásához a beépített CHARINDEX függvényt használjuk fel, melynek első paraméterében meg kell adni a keresendő részláncot, második paramétereként a forrás karakterláncot, jelen esetben a címeket tartalmazó oszlopnevet.
CHARINDEX('@',mail_address)
A ’@’ karakter utáni láncrész levágásához a SUBSTRING függvény használatos, első paraméterében a forrás karakterlánccal, második paraméterében a kezdő pozícióval, és harmadik paraméterében a végpozícióval.
SUBSTRING(mail_address,CHARINDEX('@',mail_address)+1,(len(mail_address)-1))
Ezek ismeretében már csak össze kell állítanunk egy SQL-utasítást, melyet a SqlDataAdapter komponens SelectCommand objektumának CommandText property-jeként adhatunk meg:
select SUBSTRING (mail_address,CHARINDEX('@',mail_address)+1,(len(mail_address)-1)),count(*) from table1
group by SUBSTRING (mail_address,CHARINDEX('@',mail_address)+1,(len(mail_address)-1))
Az utasítás megadásával a második DataGrid kontrolban megjelennek a kért adatok. Első oszlopban az e-mail címek ’@’ karakter utáni részével, és második oszlopban a darabszámmal.

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2003 évkönyv 151. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |