logo

PostgreSQL-uppdatering

I den här handledningen ska vi lära oss PostgreSQL UPPDATERING kommando för att uppdatera aktuell data i en tabell.

I PostgreSQL används kommandot UPDATE för att ändra aktuella poster i en tabell . För att uppdatera de valda raderna måste vi använda WHERE-satsen ; annars skulle alla rader uppdateras.

Syntax för kommandot Update

Syntaxen för uppdateringskommandot är som följer:

 UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE condition; 

Vi har följande parametrar, som används i ovanstående syntax:

Parametrar Beskrivning
Uppdatering Det är ett nyckelord som används för att uppdatera raderna i en tabell.
Tabellnamn Efter UPDATE-satsen kommer vi att använda denna parameter för att definiera tabellnamn för att uppdatera data.
Kolumn1 = värde1,
Kolumn2 = värde2,
......
KolumnN = värdeN
Det används för att beskriva en kolumns namn i en tabell vars värden måste ändras i UPPSÄTTNING klausul. Vi kan använda kommatecken (,) att skilja varje par av kolumn och värden .
Var Vi kommer att använda WHERE klausul för att filtrera posterna och bara hämta de väsentliga posterna.
Skick Det är ett uttryck som används för att returnera ett värde av typ Boolean . Och detta uttryck återkommer Sann endast för rader.

Exempel på PostgreSQL-uppdateringskommando

För vår bättre förståelse kommer vi att se exempel på PostgreSQL Uppdatering kommando .

Vi kommer att ta avdelningstabell , som vi skapade i Infoga kommandosektion .

Först kommer vi att se strukturen på avdelningstabell med hjälp av nedanstående kommando:

 SELECT * FROM department; 

Efter att ha utfört select-kommandot får vi följande resultat:

datororganisation och arkitektur
PostgreSQL-uppdatering

Exempel på PostgreSQL UPDATE-tabell

Här kommer vi att ändra NULL värden för senaste uppdateringen kolumn till Dagens datum med hjälp av kommandot nedan:

 UPDATE department SET last_update = DEFAULT WHERE last_update IS NULL; 

Vi kommer att få följande resultat efter att ha utfört kommandot ovan:

PostgreSQL-uppdatering

I ovanstående fråga tillämpar vi DEFAULT nyckelord till senaste uppdateringen kolumn som tar dagens datum enligt standardvärdet. Och den WHERE klausul uppdaterar endast de rader där senaste uppdateringen kolumnvärdet är NULL .

Exempel på att uppgradera alla rader i en tabell med kommandot Uppdatera

För att uppdatera värdena i platskolumn som U.S.A för alla rader i avdelning tabell använder vi följande kommando:

Obs: I uppdateringskommandot nedan ignorerar vi WHERE-satsen:

 UPDATE department SET location = 'U.S.A'; 

Efter att ha kört ovanstående fråga kommer den att uppdatera platskolumn i avdelningstabell:

PostgreSQL-uppdatering

Vi kommer att använda välj kommando för att verifiera resultatet av kommandot ovan i avdelningstabell:

 select* from department; 

PostgreSQL-uppdatering

Och inom samma tabell kan vi också uppdatera data för en kolumn från en ytterligare kolumn.

Kommandot nedan används för att kopiera avd.namn kolumns värden till beskrivningskolumnen av avdelning tabell:

 UPDATE department SET description = dept_name; 

När vi utför ovanstående fråga kommer den att uppdatera beskrivningskolumnen i avdelningstabell:

PostgreSQL-uppdatering

Efter det kommer vi att använda kommandot select för att se uppdaterad kolumn (beskrivning) i avdelning tabell:

PostgreSQL-uppdatering

Exempel på kommandot PostgreSQL update joins

Här tar vi department_tmp tabell , som har samma struktur som avdelning tabell:

Följande kommando används för att uppdatera värden, som kommer från avdelningstabell för kolumnerna i department_tmp tabell:

 UPDATE department_tmp SET location = department.location, description = department.description, last_update = department.last_update FROM department WHERE department_tmp.Dept_id = department.Dept_id; 

När vi utför ovanstående fråga kommer den att uppdatera department_tmp tabell:

PostgreSQL-uppdatering

För att verifiera department_tmp tabell kommer vi att använda Välj kommando:

 SELECT * FROM department_tmp; 

Och vi kommer att få följande utdata:

PostgreSQL-uppdatering

Obs: I ovanstående uppdateringskommando använde vi FROM-satsen för att beskriva den andra tabellen (avdelningen), som innehåller uppdateringen.

Här använde vi sammanfogningsvillkoret i WHERE klausul . Och ibland detta UPDATE-kommando som nämns som UPPDATERA INNER JOIN eller UPPDATERA JOIN eftersom två eller flera bord är inblandade i UPPDATERING kommando.

Uppdatera kommandot genom att returnera tillståndet

Som standard är uppdateringskommandot kan returnera antalet berörda rader, och det returnerar också effektiv data med hjälp av Återvändande avsnitt .

15 av 100,00

Kommandot nedan används för att uppdatera raden med Avd_id 1 i avdelningstabell och lämna tillbaka uppdaterade data .

 UPDATE department SET description = 'Names of departments', location = 'NewYork' WHERE dept_id = 1 RETURNING dept_id, description, location; 

Efter att ha utfört kommandot ovan kommer vi att få nedanstående tabellstruktur:

PostgreSQL-uppdatering

Efter det kommer vi att använda kommandot select för att kontrollera uppdaterade data i avdelningstabell:

 SELECT * FROM department WHERE dept_id = 1; 

När vi kör ovanstående Select-fråga får vi följande utdata:

PostgreSQL-uppdatering