我需要从表中选择一个应该是float的列。但是,某些值会以字符串形式出现。你是否可以在select语句中用常量(比如999)替换字符串?
由于
答案 0 :(得分:0)
您可以在此处找到有用的答案:https://stackoverflow.com/a/10307443/6359593。 我在这里复制了懒惰的代码=)
create or replace function cast_to_int(text, integer) returns integer as $$
begin
return cast($1 as integer);
exception
when invalid_text_representation then
return $2;
end;
$$ language plpgsql immutable;