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
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:
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:
Vi kommer att använda välj kommando för att verifiera resultatet av kommandot ovan i avdelningstabell:
select* from department;
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:
Efter det kommer vi att använda kommandot select för att se uppdaterad kolumn (beskrivning) i avdelning tabell:
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:
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:
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:
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: