Re: функция, схожая с

From: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
To: Genix <genix(at)list(dot)ru>
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: функция, схожая с
Date: 2005-10-12 13:15:41
Message-ID: Pine.GSO.4.63.0510121715230.10366@ra.sai.msu.su
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

On Wed, 12 Oct 2005, Genix wrote:

> Приветствую!
>
> Подскажите, существует ли в PgSQL функция, схожая по функциональности с
> informix'овской nvl или MSSQL'евской isnull?
>
> Суть в том, что nvl(1,2) -- если 1 == NULL то результат 2, иначе 1.
> Используется при "склейке" строковых полей.

я использую coalesce()

>
> Можно и написать такую, однако делать это для всех возможных вариантов не
> хочется.
>
> Буду благодарен за помощь.
>
>

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
>From pgsql-ru-general-owner(at)postgresql(dot)org Wed Oct 12 10:18:59 2005
X-Original-To: pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org
Received: from localhost (av.hub.org [200.46.204.144])
by svr1.postgresql.org (Postfix) with ESMTP id 85CD4D7B2C
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>; Wed, 12 Oct 2005 10:18:58 -0300 (ADT)
Received: from svr1.postgresql.org ([200.46.204.71])
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
with ESMTP id 04314-03
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>;
Wed, 12 Oct 2005 13:18:54 +0000 (GMT)
Received: from ra.sai.msu.su (ra.sai.msu.su [158.250.29.2])
by svr1.postgresql.org (Postfix) with ESMTP id 591EDD7D40
for <pgsql-ru-general(at)postgresql(dot)org>; Wed, 12 Oct 2005 10:18:49 -0300 (ADT)
Received: from ra (ra [158.250.29.2])
by ra.sai.msu.su (8.13.4/8.13.4) with ESMTP id j9CDIlwM024819;
Wed, 12 Oct 2005 17:18:47 +0400 (MSD)
Date: Wed, 12 Oct 2005 17:18:47 +0400 (MSD)
From: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
X-X-Sender: megera(at)ra(dot)sai(dot)msu(dot)su
To: Genix <genix(at)list(dot)ru>
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: lower <-> upper
In-Reply-To: <434D0C46(dot)4060804(at)list(dot)ru>
Message-ID: <Pine(dot)GSO(dot)4(dot)63(dot)0510121716180(dot)10366(at)ra(dot)sai(dot)msu(dot)su>
References: <434D0C46(dot)4060804(at)list(dot)ru>
MIME-Version: 1.0
X-Virus-Scanned: by amavisd-new at hub.org
X-Spam-Status: No, hits=0.322 required=5 tests=[AWL=-0.052,
DNS_FROM_RFC_ABUSE=0.374]
X-Spam-Level:
Content-Type: TEXT/PLAIN; charset=koi8-r; format=flowed
Content-Transfer-Encoding: 8BIT
X-Archive-Number: 200510/6
X-Sequence-Number: 405

On Wed, 12 Oct 2005, Genix wrote:

> Подскажите, с чем может быть связано следующее:
>
> clients=# select upper('Тестовое Сообщение'), lower('Тестовое Сообщение');
> upper | lower
> --------------------+--------------------
> тестовое сообщение | ТЕСТОвОЕ СООБЩЕНИЕ
> (1 запись)

Посмотри настройки (show all). Вот у меня - сервер и клиент работают в KOI8.

www=# select upper('Тестовое Сообщение'), lower('Тестовое Сообщение');
upper | lower
--------------------+--------------------
ТЕСТОВОЕ СООБЩЕНИЕ | тестовое сообщение
(1 row)

Вот я клиенту говорю
www=# set client_encoding='WIN';
SET
www=# select upper('Тестовое Сообщение'), lower('Тестовое Сообщение');
upper | lower
--------------------+--------------------
тестовое сообщение | ТЕСТОВОЕ СООБЩЕНИЕ
(1 row)

>
>
>

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
>From pgsql-ru-general-owner(at)postgresql(dot)org Wed Oct 12 13:23:11 2005
X-Original-To: pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org
Received: from localhost (av.hub.org [200.46.204.144])
by svr1.postgresql.org (Postfix) with ESMTP id 87E09D7EA5
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>; Wed, 12 Oct 2005 13:23:10 -0300 (ADT)
Received: from svr1.postgresql.org ([200.46.204.71])
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
with ESMTP id 62408-01
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>;
Wed, 12 Oct 2005 16:23:07 +0000 (GMT)
Received: from beta.sbin.org (beta.sbin.org [217.106.81.40])
by svr1.postgresql.org (Postfix) with ESMTP id C45A7D7DAD
for <pgsql-ru-general(at)postgresql(dot)org>; Wed, 12 Oct 2005 13:23:06 -0300 (ADT)
Received: from [192.168.1.1] (beta.sbin.org [192.168.1.1])
(authenticated bits=0)
by beta.sbin.org (8.13.3/8.13.3) with ESMTP id j9CGN2Zk012037
for <pgsql-ru-general(at)postgresql(dot)org>; Wed, 12 Oct 2005 20:23:04 +0400
Message-ID: <434D3864(dot)1080104(at)sbin(dot)org>
Date: Wed, 12 Oct 2005 20:23:00 +0400
From: Nick Gazaloff <nick(at)sbin(dot)org>
User-Agent: Mozilla Thunderbird 1.0.5 (X11/20050711)
X-Accept-Language: en-us, en
MIME-Version: 1.0
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: =?KOI8-R?Q?=C6=D5=CE=CB=C3=C9=D1=2C_=D3?=
References: <434D05CB(dot)9020806(at)list(dot)ru>
In-Reply-To: <434D05CB(dot)9020806(at)list(dot)ru>
X-Enigmail-Version: 0.90.0.0
X-Enigmail-Supports: pgp-inline, pgp-mime
Content-Type: text/plain; charset=KOI8-R; format=flowed
Content-Transfer-Encoding: 8bit
X-Authenticated-Sender: user nick(at)sbin(dot)org from 192.168.1.1
X-Virus-Scanned: ClamAV version 0.81, clamav-milter version 0.81b on beta.sbin.org
X-Virus-Status: Clean
X-Virus-Scanned: by amavisd-new at hub.org
X-Spam-Status: No, hits=0.381 required=5 tests=[AWL=-0.248, URIBL_SBL=0.629]
X-Spam-Level:
X-Archive-Number: 200510/7
X-Sequence-Number: 406

Genix wrote:
> Приветствую!
>
> Подскажите, существует ли в PgSQL функция, схожая по функциональности с
> informix'овской nvl или MSSQL'евской isnull?
>
> Суть в том, что nvl(1,2) -- если 1 == NULL то результат 2, иначе 1.
> Используется при "склейке" строковых полей.
>

COALESCE

> Можно и написать такую, однако делать это для всех возможных вариантов
> не хочется.
>
> Буду благодарен за помощь.
>

--

С уважением,
технический директор ООО "ЦСА"
Николай Газалов
http://www.sbin.org
sip:nick(at)sbin(dot)org
+7 8793 365584
(GPG Key ID: 4396B2D0)

Browse pgsql-ru-general by date

  From Date Subject
Next Message Genix 2005-10-13 06:02:06 Re: lower <-> upper
Previous Message Genix 2005-10-12 13:14:46 lower <-> upper