PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak zmienić typ danych kolumny ze znakowego na numeryczny w PostgreSQL 8.4?

Możesz spróbować użyć USING :

Opcjonalne USING klauzula określa, jak obliczyć nową wartość kolumny ze starej; jeśli zostanie pominięty, domyślna konwersja jest taka sama, jak rzutowanie przypisania ze starego typu danych na nowy. USING klauzula musi być podana, jeśli nie ma niejawnego lub przypisania rzutowanego ze starego na nowy typ.

Może to zadziałać (w zależności od Twoich danych):

alter table presales alter column code type numeric(10,0) using code::numeric;
-- Or if you prefer standard casting...
alter table presales alter column code type numeric(10,0) using cast(code as numeric);

To się nie powiedzie, jeśli masz coś w code którego nie można rzucić na liczby; jeśli USING nie powiedzie się, będziesz musiał ręcznie wyczyścić dane nieliczbowe przed zmianą typu kolumny.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak działa POSITION() w PostgreSQL

  2. Wykorzystanie automatyzacji do przyspieszenia testów wydań na PostgreSQL

  3. Zarządzanie wysoką dostępnością w PostgreSQL – Część III:Patroni

  4. Importuj zrzut MySQL do bazy danych PostgreSQL

  5. Jak działa current_date w PostgreSQL