Vous n'êtes pas identifié(e).
Pages : 1
Bonjour à tous,
J'ai une colonne de type real[] qui ressemble à cela en terme de contenu
{NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,8.862238e-06,1.117886e-06,-2.000768e-05,-8.042958e-06,-6.152146e-06,-2.028796e-05,-1.554476e-05,-1.513512e-05,-3.419416e-06,8.676822e-05,0.001941478,0.005453602,0.01815352,0.02022328,0.02122582,0.02196964,0.02267034,0.0233387}
Et je souhaite diviser chaque valeur de cette colonne par 1000 en PL/pgsql... j'ai tenté un truc simple avec un update table set macolonne=macolonne/1000 mais ce n'est pas concluant. J'ai une solution en passant par un code python ou talend en intermédiaire mais dans l'idéal je cherche quelque chose de rapide sans intermédiaire.
Ca existe ou je cherche inutilement?
Merci pour votre aide.
Caroline
Hors ligne
Bonjour,
Vous devriez vous en sortir avec unnest. Par exemple:
with s(v) as (
select '{NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,8.862238e-06,1.117886e-06,-2.000768e-05,-8.042958e-06,-6.152146e-06,-2.028796e-05,-1.554476e-05,-1.513512e-05,-3.419416e-06,8.676822e-05,0.001941478,0.005453602,0.01815352,0.02022328,0.02122582,0.02196964,0.02267034,0.0233387}'::real[]
)
select array_agg(v2) from (select unnest(v)/1000 as v2 from s) s2;
-[ RECORD 1 ]------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
array_agg | {NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,8.86223824636545e-09,1.1178859722349444e-09,-2.0007679268019273e-08,-8.042958143050782e-09,-6.1521459429059176e-09,-2.0287960069254042e-08,-1.554475966258906e-08,-1.5135119610931726e-08,-3.4194160889455816e-09,8.676821744302288e-08,1.941477996297181e-06,5.453601945191622e-06,1.8153520300984382e-05,2.0223280414938925e-05,2.12258193641901e-05,2.1969640627503397e-05,2.2670339792966843e-05,2.3338699713349343e-05}
Julien.
https://rjuju.github.io/
Hors ligne
Merci beaucoup Julien. C'est parfait, j'ai mis cela dans une procédure et j'ai pu traiter tous mes enregistrements.
Bonne soirée
Hors ligne
Pages : 1