Re: [SQL] Please help: How to determine largest of two numbers in a query?

Поиск
Список
Период
Сортировка
От David Hartwig
Тема Re: [SQL] Please help: How to determine largest of two numbers in a query?
Дата
Msg-id 3665F665.15AC16B4@bellatlantic.net
обсуждение исходный текст
Ответ на Please help: How to determine largest of two numbers in a query?  (Greg Youngblood <YoungblG@houstoncellular.com>)
Список pgsql-sql
My $.03 worth, without really knowing what these values represent:

There is no such "standard" query that can conditionally select between two
columns.   Fortunately PostgreSQL will allow you to create function - of one
does not already exist.

The function would be something like:
    greater_int(integer a, integer b)
It takes two integers arguments and returns the greater integer.

Then you do something like:

CREATE VIEW  myview AS
    SELECT yyymmdd, key, greater_int(value1, value2) FROM mytable;

Or just do the SELECTs directly.

This may not be the most efficient way to accomplish your goal.   I would also
take a good look at may table design.   Value1 and value2 MAY be a repeating
group and you may want to normalize a little more.  Or not.


Greg Youngblood wrote:

> I have a table with the following structure:
>         yyyymmdd        int4
>         key             char(16)
>         value1          int4
>         value2          int4
>
> with the following sample data:
>         yyyymmdd        key     value1  value2
>         19981201        hello   32      16
>         19981201        bye     29      64
>         19981202        hello   16      20
>         19981202        bye     23      13
>
> What I need is to select the greatest between value1 and value2, so the
> answer would be:
>         yyyymmdd        key     value
>         19981201        hello   32
>         19981201        bye     64
>         19981202        hello   20
>         19981202        bye     23
>
> I can do this via ODBC using access by creating a column which is defined as
> IF(value1>value2,value1,value2) but that doesn't work in psql.
>
> How can I make this work in psql?
>
> Thanks
> Greg


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

Предыдущее
От: Adam Maddock
Дата:
Сообщение: Re: [SQL] Please help: How to determine largest of two numbers in a query?
Следующее
От: Sferacarta Software
Дата:
Сообщение: Re[2]: [SQL] Query to eliminate duplicates