stringmanipulation im query-ergebnis

ich würde gerne die query-ausgabe im query bearbeiten, bin aber offenbar zu doof, um das mit regexen zu lösen.

gegeben:

query1:

select name from hosts where ip='1.1.1.1';
www.blafasel.de
www.oerg.com
www.huhu.co.uk
www.auweia.info

query2

select gettld('www.huhu.co.uk')
.co.uk

query2 bedient eine funktion, die jeweils die topleveldomain extrahiert.

Nun hätte ich gerne als result von query1 die ergebnisse OHNE tld, also nur

www.blafasel
www.oerg
www.huhu
www.auweia

Meine Versuche, diese Aufgabe in einen Query zu verpacken, waren erfolglos…
Vorschläge? Ideen?

tom



test=*# select regexp_replace('abc.de.com',E'\.[^.]*$','');
 regexp_replace
----------------
 abc.de
(1 Zeile)

Andreas

das ist schön, aber ein wenig zu einfach:

es gibt eine reihe von tlds, die 2 punkte haben:

co.uk, co.au usw usf. - deshalb auch die funktion gettld, die das eigentlich ganz wunderbar erledigt.

trotzdem ein prima tipp, der mich zum ziel geführt hat:

select regexp_replace('abc.co.uk',(select gettld('abc.co.uk')),'');

klappt prima.

jetzt muss ich das noch in den hauptquery verpacken, aber ist hinzukriegen.

vielen dank!

tom