Re: [SQL] Character type name?? How to lower case it? - Mailing list pgsql-sql

From Douglas Nichols
Subject Re: [SQL] Character type name?? How to lower case it?
Date
Msg-id Pine.LNX.3.96.990129114105.2389A-100000@dnichols.fhcrc.org
Whole thread Raw
In response to Re: [SQL] Character type name?? How to lower case it?  (Remigiusz Sokolowski <rems@gdansk.sprint.pl>)
Responses Re: [SQL] Character type name?? How to lower case it?
List pgsql-sql
Actually I was talking about several fields, but to make it worst I really
do not know how many fields. So I was making a quoted set of strings to
put together at sql time to say: is filed1 in (...) how ever long (...) is
An example wuld be:

a.attname in ('hello','goodbye','baisc','perl')

but I do not want to have to know the case a.attname although I can
manipulate (..) to either.

Cheers

Douglas Nichols                                           dnichols@fhcrc.org
----------------------------------------------------------------------------
Database Manager                            National Wilms Tumor Study Group
Fred Hutchinson Cancer Research Center
On Fri, 29 Jan 1999, Remigiusz Sokolowski wrote:

> > Moin!
> >
> > On Fri, 29 Jan 1999 09:43:33 +0100 (MET)
> >     Remigiusz Sokolowski <rems@gdansk.sprint.pl> wrote:
> > > >
> > > > I have this script:
> > > >       SELECT a.attname, t.typname, a.attlen
> > > >         FROM pg_class c, pg_attribute a, pg_type t
> > > >           WHERE c.relname = 'regis' and a.attname in
> > > > ('var1','var2',var3');
> > > >
> > > > but a.attname is of type name, inwhich text(..) or lower(..)
> > > > do not work with this type and I do not seem to be able to
> > > > convert type name to text....
> > > >
> > > > Can someone help me get around this?
> > > >
> > >
> > > You could use case-insensitive regex operator - Your query should looks
> > > like following:
> > >     SELECT a.attname, t.typname, a.attlen
> > >         FROM pg_class c, pg_attribute a, pg_type t
> > >         WHERE c.relname = 'regis' and (a.attname ~*'var1' OR
> > > a.attname~*'var2' OR a.attname~*'var3');
> >
> > Why not
> > [...]
> >   WHERE c.relname = 'regis' and a.attname ~* 'var[1-3]'
> > [...]
> >
> > It's a regex, remember?
> > The OR isn't necessary.
>
> Right, but I suppose, that var1 and var2 and var3 are only examples - it
> could be that it would be 'chicks', 'flames' and 'tails' - what about
> this? :-)
>     rem
> -------------------------------------------------------------------*------------
> Remigiusz Sokolowski      e-mail: rems@gdansk.sprint.pl           * *
> -----------------------------------------------------------------*****----------
>
>


pgsql-sql by date:

Previous
From: "Oliver Elphick"
Date:
Subject: Re: [HACKERS] Re: SELECT DISTINCT ON ... ORDER BY ...
Next
From: jpmarichal@infoacces.com (Juan Pablo Marichal Catalan)
Date:
Subject: Re: [SQL] Equivalent for an Access query