logo

PostgreSQL-opdatering

I denne tutorial skal vi lære PostgreSQL OPDATERING kommando til opdatering af de aktuelle data i en tabel.

I PostgreSQL bruges UPDATE-kommandoen for at ændre de nuværende poster i en tabel . For at opdatere de valgte rækker skal vi bruge WHERE-sætningen ; ellers ville alle rækker blive opdateret.

Syntaks for kommandoen Update

Syntaksen for opdateringskommandoen er som følger:

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

Vi har følgende parametre, som bruges i ovenstående syntaks:

Parametre Beskrivelse
Opdatering Det er et nøgleord, som bruges til at opdatere rækkerne i en tabel.
Tabel_navn Efter UPDATE-klausulen vil vi bruge denne parameter til at definere tabelnavn at opdatere dataene.
Kolonne1 = værdi1,
Kolonne2 = værdi2,
......
KolonneN = værdiN
Det bruges til at beskrive en kolonnens navn i en tabel, hvis værdier skal ændres i SÆT klausul. Vi kan bruge komma (,) at adskille hvert par af kolonne og værdier .
Hvor Vi vil bruge WHERE-klausul at filtrere posterne og kun hente de væsentlige poster.
Tilstand Det er et udtryk, som bruges til at returnere en værdi af type Boolean . Og dette udtryk vender tilbage rigtigt kun for rækker.

Eksempler på PostgreSQL-opdateringskommando

For vores bedre forståelse vil vi se eksempler på PostgreSQL Opdatering kommando .

Vi vil tage afdelingsbord , som vi skabte i Indsæt kommandosektion .

onclick js

For det første vil vi se strukturen af afdelingsbord ved hjælp af nedenstående kommando:

 SELECT * FROM department; 

Efter at have udført select-kommandoen, får vi følgende resultat:

PostgreSQL-opdatering

Eksempel på PostgreSQL UPDATE-tabel

Her vil vi ændre NUL værdier af sidste ændring kolonne til Nuværende dato med nedenstående kommandos hjælp:

 UPDATE department SET last_update = DEFAULT WHERE last_update IS NULL; 

Vi får nedenstående resultat efter at have udført ovenstående kommando:

PostgreSQL-opdatering

I ovenstående forespørgsel anvender vi DEFAULT søgeord til sidste ændring kolonne, der tager nuværende dato i henhold til standardværdien. Og WHERE-klausul opdaterer kun de rækker, hvor sidste ændring kolonneværdien er NUL .

Eksempel på opgradering af alle rækker i en tabel ved hjælp af kommandoen Update

For at opdatere værdierne i placering kolonne som USA for alle rækker i afdeling tabel, bruger vi følgende kommando:

Bemærk: I nedenstående opdateringskommando ignorerer vi WHERE-sætningen:

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

Efter at have udført ovenstående forespørgsel, vil den opdatere placering kolonne i afdelingstabel:

PostgreSQL-opdatering

Vi vil bruge vælg kommando for at kontrollere outputtet af ovenstående kommando i afdelingstabel:

 select* from department; 

PostgreSQL-opdatering

Og inden for samme tabel kan vi også opdatere data for en kolonne fra en ekstra kolonne.

Nedenstående kommando bruges til at kopiere afd.navn kolonnens værdier til beskrivelseskolonnen af afdeling bord:

 UPDATE department SET description = dept_name; 

Når vi udfører ovenstående forespørgsel, vil den opdatere beskrivelseskolonnen i afdelingstabel:

PostgreSQL-opdatering

Derefter vil vi bruge kommandoen vælg til at se opdateret kolonne (beskrivelse) i afdeling bord:

PostgreSQL-opdatering

Eksempel på PostgreSQL update joins kommando

Her vil vi tage afdeling_tmp tabel , som har samme struktur som afdeling bord:

Følgende kommando bruges til at opdatere værdier, som kommer fra afdelingsbord for kolonnerne i afdeling_tmp bord:

 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 udfører ovenstående forespørgsel, vil den opdatere afdeling_tmp tabel:

PostgreSQL-opdatering

For at verificere afdeling_tmp tabel, vil vi bruge Vælg kommando:

 SELECT * FROM department_tmp; 

Og vi får nedenstående output:

PostgreSQL-opdatering

Bemærk: I ovenstående opdateringskommando brugte vi FROM-sætningen til at beskrive den anden tabel (afdeling), som indeholder i opdateringen.

Her brugte vi sammenføjningsbetingelsen i WHERE-klausul . Og nogle gange nævnte denne UPDATE-kommando som OPDATERE INNER JOIN eller OPDATERE JOIN da to eller flere borde er involveret i OPDATERING kommando.

Opdater kommando gennem returnerende tilstand

Som standard er opdateringskommando kan returnere antallet af berørte rækker, og det returnerer også de effektive data ved hjælp af Returafsnit .

Nedenstående kommando bruges til at opdatere rækken med Afd_id 1 i afdelingsbord og returnere opdaterede data .

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

Efter at have udført ovenstående kommando, får vi nedenstående tabelstruktur:

PostgreSQL-opdatering

Derefter vil vi bruge kommandoen select til at kontrollere de opdaterede data i afdelingstabel:

 SELECT * FROM department WHERE dept_id = 1; 

Når vi kører ovenstående Select-forespørgsel, får vi nedenstående output:

PostgreSQL-opdatering