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

Tilføjelse af en ny kolonne i en midlertidig tabel

Du vil have ÆNDRINGSTABEL ... TILFØJ KOLONNE efterfulgt af en OPDATERING .

Jeg sagde til at begynde med ÆNDRINGSTABEL ... TILFØJ KOLONNE ... BRUGER men det var forkert på to punkter. TILFØJ KOLONNE tager en DEFAULT ikke USING - og du kan ikke gøre det på én gang, fordi hverken en DEFAULT udtryk eller en USING udtryk refererer muligvis ikke til andre kolonner.

Så du skal gøre:

ALTER TABLE tabelnavn ADD COLUMN colname varchar; OPDATERING tabelnavn SET colname =(CASE WHEN othercol <0 THEN 'Credit' ELSE 'Debet' END );

Tænk grundigt over, om nul skal være 'Debet' eller 'Kredit', og juster CASE tilsvarende.

Til afrunding skal du bruge round(amount,2) . Der er ikke nok detaljer i dit spørgsmål til, at jeg kan være sikker på hvordan; sandsynligvis ved OPDATERING ing af temp-tabellen med OPDATER tabellen SET beløb =runde(beløb,2) men uden konteksten er det svært at vide, om det er rigtigt. Denne erklæring smider irreversibelt information væk så det bør kun bruges på en kopi af dataene.




  1. Sådan tilføjer du en opslagskontrol til en formular i Access 2016

  2. Hvordan skal jeg designe mine MYSQL-tabeller?

  3. Kunne ikke konvertere parameterværdi fra en streng til en Int32

  4. Eksempeldata - Problem under udførelse af lagret procedure, som består af både opdatering og indsæt sætninger