sql >> Database teknologi >  >> RDS >> PostgreSQL

Postgres:modificer hvert array-element

Du skal opløse, dele og derefter samle tilbage.

update the_table
  set the_array = array(select t.val / 10 
                        from unnest(the_table.the_array) as t(val));

Hvis du har brug for at bevare den oprindelige rækkefølge i arrayet, brug with ordinality

update the_table
  set the_array = array(select t.val / 10 
                        from unnest(the_table.the_array) with ordinality as t(val,idx) 
                        order by t.idx);

For at køre dette i Liquibase skal du bruge en <sql> ændre

Online eksempel:https://rextester.com/IJGA96691




  1. Sql - Fletning af rækker, hvis dato forbinder

  2. Importer data fra Excel-regneark eller CVS til MySQL

  3. OVER 70 kb BILLEDE UPLOADES IKKE i Temp Directory

  4. Adgangsværdi i resultatsætrækken, hvor værdien kommer fra et MySQL-funktionskald