Re: Constructing column from different individual fields

Поиск
Список
Период
Сортировка
От Mike Mascari
Тема Re: Constructing column from different individual fields
Дата
Msg-id 3F5F54BE.2030503@mascari.com
обсуждение исходный текст
Ответ на Constructing column from different individual fields in same row.  (froggle2003@yahoo.com (Alex Martinoff))
Список pgsql-general
Alex Martinoff wrote:

> I'm wondering if it's possible to have a query construct a column
> where the value of the column at each row is taken from another field
> in that same row. For example, suppose you have a table like:
>
> create table users (
>     uid serial,
>     nickname varchar(20),
>     realname varchar(30),
>     prefname int2,
>     primary key (uid)
> );
>
> insert into users (nickname, realname, prefname)
> values ('Stevo', 'Steve Sullivan', 1);
>
> insert into users (nickname, realname, prefname)
> values ('Johnny Boy', 'John Fisk', 2);
>
>
> A prefname of 1 means the user prefers their nickname, while 2 means
> they prefer their realname.
>
> Is there a query I can perform that would return:
>
>  uid | Preferred Name
> -----+----------------
>    1 | Stevo
>    2 | John Fisk


SELECT uid, (CASE WHEN prefname = 1 THEN nickname ELSE realname END)
AS "Preferred Name"
FROM users
WHERE ...

HTH,

Mike Mascari
mascarm@mascari.com


В списке pgsql-general по дате отправления:

Предыдущее
От: "scott.marlowe"
Дата:
Сообщение: Re: Picture with Postgres and Delphi
Следующее
От: Jean-Luc Lachance
Дата:
Сообщение: Re: why does count take so long?