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.