> > > > > > Well, they aren't separate fields so you can't ORDER BY domain. The dot > > > > > > was used so it looks like a schema based on dbname. > > > > > > IMHO it should look like an user in domain ;) > > > > Agreed, but there is something to be said for doing a sort of users > > per domain. This wouldn't be an issue, I don't think, if there was a > > split_before() and split_after() like functions. > > > > # SELECT split_before('[EMAIL PROTECTED]','@'), split_after('[EMAIL PROTECTED]', '@'); > > ?column? | ?column? > > ----------+------------ > > user | domain.com > > > > What would you guys say to submissions for a patch that would add the > > function listed above? > > create function split_before(text,text) returns text as ' > select case when (strpos($1,$2) > 0) > then substr($1,1,strpos($1,$2)-1) > else $1 > end as usename > ' language 'SQL'; > > create function split_after(text,text) returns text as ' > select case when (strpos($1,$2) > 0) > then substr($1,strpos($1,$2)+1) > else '''' > end as usedomain > ' language 'SQL' ; > > hannu=# select split_before('me@somewhere','@'), > split_after('me@somewhere','@'); > split_before | split_after > --------------+------------- > me | somewhere > (1 row)
Oh that was handy and fast! I didn't know of strpos(). Cool, who says 'ya can't learn something every day? :~) Now with an alias or subselect, it should be very easy to order users in a domain in any way that SQL allows. :~) Thanks Hannu. -sc -- Sean Chittenden ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])