Обсуждение: Convert of string to array problem

Поиск
Список
Период
Сортировка

Convert of string to array problem

От
Bård Grønbech
Дата:
Have a string like '0.1;0.2;null;0.3' which I would like to convert
into a double precision[] array.

Trying:

select cast (string_to_array('0.1;0.2;null;0.3', ';') as float8[])

gives me an error: invalid input syntax for type double precision: "null".

Can anybody help me?

-Bård

Re: Convert of string to array problem

От
Thom Brown
Дата:
On 29 April 2010 13:35, Bård Grønbech <baard.gronbech@gmail.com> wrote:
Have a string like '0.1;0.2;null;0.3' which I would like to convert
into a double precision[] array.

Trying:

select cast (string_to_array('0.1;0.2;null;0.3', ';') as float8[])

gives me an error: invalid input syntax for type double precision: "null".

Can anybody help me?

-Bård


I believe string_to_array will take that null as a string called 'null', which it can't convert to a float8.

Regards

Thom

Re: Convert of string to array problem

От
Merlin Moncure
Дата:
On Thu, Apr 29, 2010 at 8:52 AM, Thom Brown <thombrown@gmail.com> wrote:
> On 29 April 2010 13:35, Bård Grønbech <baard.gronbech@gmail.com> wrote:
>>
>> Have a string like '0.1;0.2;null;0.3' which I would like to convert
>> into a double precision[] array.
>>
>> Trying:
>>
>> select cast (string_to_array('0.1;0.2;null;0.3', ';') as float8[])
>>
>> gives me an error: invalid input syntax for type double precision: "null".
>>
>> Can anybody help me?
>>
>> -Bård
>>
>
> I believe string_to_array will take that null as a string called 'null',
> which it can't convert to a float8.

select array(select case when n='null' then null else n end from
unnest(string_to_array('0.1;0.2;null;0.3', ';')) as n);

?column?
--------------------
 {0.1,0.2,NULL,0.3}

merlin