pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: T E Schmitz <mailreg@numerixtechnology.de>
To: Aaron Bono <postgresql@aranya.com>
To: pgsql-sql@postgresql.org
Subject: Re: SELECT substring with regex
Date: Fri, 07 Jul 2006 21:12:52 +0100
Message-ID: <44AEC044.1040206@numerixtechnology.de> (raw)
In-Reply-To: <bf05e51c0607071245w3738e109l8128d345f5b06977@mail.gmail.com>
References: <44AE66E0.1040606@numerixtechnology.de>
	<200607071659.14940.gary.stainburn@ringways.co.uk>
	<44AE9B4F.1020401@numerixtechnology.de>
	<a55915760607071137q2c70346cp5b30cac14beaf1e7@mail.gmail.com>
	<bf05e51c0607071245w3738e109l8128d345f5b06977@mail.gmail.com>

Aaron Bono wrote:
> On 7/7/06, *Rodrigo De Leon* <rdeleonp@gmail.com 
> <mailto:rdeleonp@gmail.com>> wrote:
> 
>     On 7/7/06, T E Schmitz <mailreg@numerixtechnology.de
>     <mailto:mailreg@numerixtechnology.de>> wrote:
>      > But that takes me to the next problem:
>      >
>      > For the sake of the example I simplified the regular pattern.
>      > In reality, BASE_NAME might be:
>      >
>      > 28mm
>      > 28-70mm
>      >
>      > So the reg. expr. requires brackets:
>      >
>      > substring (NAME, '^(\\d+(-\\d+)?mm)' ) as BASE_NAME
>      >
>      > Actually, the pattern is more complex than that and I cannot see
>     how I
>      > can express it without brackets.
> 
>     Maybe:
> 
>     select
>     substring ('150mm LD AD Asp XR Macro', '^[\\d-]*mm' ) as BASE_NAME
>     , substring('150mm LD AD Asp XR Macro','^[\\d-]*mm (.*)$') as SUFFIX;
> 
>     select
>     substring ('28-70mm LD AD Asp XR Macro', '^[\\d-]*mm' ) as BASE_NAME
>     , substring('28-70mm LD AD Asp XR Macro','^[\\d-]*mm (.*)$') as SUFFIX;
> 
>     etc...
> 
>     Regards,
> 
>     Rodrigo
> 
> 
> Is there a reason this column wasn't separated into two different 
> columns?  Or perhaps into a child table if there could be more than one 
> XXXmm value in the field?
> 
> Just curious.

You're absolutely right (see my other posting):

what was entered:

MODEL.NAME "150mm F4 E" TYPE.NAME -
MODEL.NAME "150mm F4 PE" TYPE.NAME -

what should've been entered:
MODEL.NAME "150mm F4"
TYPE.NAME "PE"
TYPE.NAME "E"
both referencing the same MODEL

-- 


Regards,

Tarlika Elisabeth Schmitz



view thread (20+ messages)  latest in thread

Message-ID: <44AEC044.1040206@numerixtechnology.de>
Permalink:  ../44AEC044.1040206@numerixtechnology.de/
Also on:    postgresql.org/message-id/44AEC044.1040206@numerixtechnology.de

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: mailreg@numerixtechnology.de, postgresql@aranya.com
  Subject: Re: SELECT substring with regex
  In-Reply-To: <44AEC044.1040206@numerixtechnology.de>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox