Matthew Hagerty ha scritto:
> Greetings,
>
> What would be the chances of getting a patch for 6.4.2 to do bool-to-int
> conversion? I need to do a query similar to this:
>
> SELECT * FROM mytable ORDER BY
> int(col1 > 3) + int(col2 < 4) + ... other conditions;
>
> (courtesy of Tom Lane)
>
> Would it be that hard to make a patch to do the conversion? I would try it
> myself but I have no idea where to start looking, and I need this sooner
> than I could probably figure it out.
>
> I'm not making demands or stomping my feet, I love postgres and I
> understand that it is free software, but if one of you feels really nice... :)
>
> Thanks,
> Matthew
This function converts a bool to a smallint...
create function int2(bool) returns int2 as
'begin
IF $1 THEN
RETURN 1;
ELSE
RETURN 0;
END IF;
end;' language 'plpgsql';
example:
SELECT * FROM mytable ORDER BY
int2(col1 > 3) + int2(col2 < 4) + ... other conditions;
-----
José