Šioje pamokoje mes išmoksime „PostgreSQL“ NAUJINIMAS komanda, skirta atnaujinti esamus duomenis lentelėje.
PostgreSQL naudojama komanda UPDATE pakeisti esamus įrašus lentelėje . Norėdami atnaujinti pasirinktas eilutes, turime naudoti WHERE sąlygą ; kitu atveju visos eilutės būtų atnaujintos.
Atnaujinimo komandos sintaksė
Atnaujinimo komandos sintaksė yra tokia:
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE condition;
Turime šiuos parametrus, kurie naudojami aukščiau pateiktoje sintaksėje:
Parametrai | apibūdinimas |
---|---|
Atnaujinti | Tai raktinis žodis, naudojamas lentelės eilėms atnaujinti. |
Lentelės_pavadinimas | Po UPDATE sąlygos, mes naudosime šį parametrą, kad apibrėžtume lentelės pavadinimas atnaujinti duomenis. |
1 stulpelis = 1 vertė, 2 stulpelis = 2 vertė, ...... StulpelisN = vertėN | Jis naudojamas apibūdinti a stulpelio pavadinimas lentelėje, kurios reikšmes reikia keisti NUSTATYTI sąlyga. Mes galime naudoti kablelis (,) atskirti kiekvieną porą stulpelį ir vertes . |
Kur | Mes naudosime WERE sąlyga Norėdami filtruoti įrašus ir gauti tik esminius įrašus. |
Būklė | Tai išraiška, kuri naudojama norint grąžinti tipo reikšmę Būlio . Ir ši išraiška grįžta tiesa tik eilėms. |
PostgreSQL naujinimo komandos pavyzdžiai
Kad geriau suprastume, pamatysime pavyzdžius PostgreSQL Atnaujinti komandą .
Mes paimsime skyriaus lentelė , kurį sukūrėme Įterpti komandų skyrių .
Pirmiausia pamatysime jos struktūrą skyriaus lentelė su toliau pateiktos komandos pagalba:
SELECT * FROM department;
Įvykdę pasirinkimo komandą, gausime tokį rezultatą:
PostgreSQL UPDATE lentelės pavyzdys
Čia mes pakeisime NULL vertės Paskutiniai pakeitimai stulpelį į Dabartinė data su toliau pateiktos komandos pagalba:
UPDATE department SET last_update = DEFAULT WHERE last_update IS NULL;
Atlikę aukščiau pateiktą komandą gausime žemiau pateiktą rezultatą:
Aukščiau pateiktoje užklausoje taikome NUMATYTOJI raktinis žodis prie Paskutiniai pakeitimai stulpelis, kuris užima dabartinė data pagal numatytąją reikšmę. Ir WERE sąlyga atnaujina tik tas eilutes, kuriose Paskutiniai pakeitimai stulpelio vertė yra NULL .
Visų lentelės eilučių atnaujinimo naudojant komandą Atnaujinti pavyzdys
Norėdami atnaujinti reikšmes vietos stulpelis kaip JAV visoms eilutėms skyrius lentelę, naudojame šią komandą:
rr algoritmas
Pastaba: toliau pateiktoje naujinimo komandoje mes nepaisome WHERE sąlygos:
UPDATE department SET location = 'U.S.A';
Įvykdžius aukščiau pateiktą užklausą, ji atnaujins vietos stulpelis viduje skyriaus lentelė:
Mes naudosime pasirinkite komandą kad patikrintumėte aukščiau pateiktos komandos išvestį skyriaus lentelė:
select* from department;
Toje pačioje lentelėje taip pat galime atnaujinti stulpelio duomenis iš papildomo stulpelio.
Žemiau pateikta komanda naudojama kopijuoti skyriaus_pavadinimas stulpelio reikšmes į aprašymo stulpelyje iš skyrius lentelė:
UPDATE department SET description = dept_name;
Kai atliksime aukščiau pateiktą užklausą, ji atnaujins aprašymo stulpelyje viduje skyriaus lentelė:
Po to naudosime pasirinkimo komandą, kad pamatytume atnaujintas stulpelis (aprašas) viduje skyrius lentelė:
PostgreSQL naujinimo prisijungimo komandos pavyzdys
Čia mes paimsime skyrius_tmp lentelė , kurios struktūra tokia pati kaip skyrius lentelė:
Ši komanda naudojama norint atnaujinti reikšmes, gaunamas iš skyriaus lentelė stulpeliams skyrius_tmp lentelė:
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;
Kai atliksime aukščiau pateiktą užklausą, ji atnaujins Department_tmp lentelė:
Norėdami patikrinti skyrius_tmp lentelę, naudosime Pasirinkite komanda:
SELECT * FROM department_tmp;
Ir mes gausime žemiau pateiktą išvestį:
"kruskal algoritmas"
Pastaba: Aukščiau pateiktoje naujinimo komandoje naudojome sąlygą FROM, kad apibūdintume antrąją lentelę (skyrių), kuri yra naujinime.
Čia naudojome sujungimo sąlygą WERE sąlyga . Ir kartais ši komanda UPDATE minima kaip ATNAUJINTI VIDINĮ PRISIJUNGIMĄ arba ATNAUJINTI PRISIJUNGTI nes dalyvauja dvi ar daugiau lentelių ATNAUJINTI komandą.
Atnaujinkite komandą naudodami grąžinimo sąlygą
Pagal numatytuosius nustatymus, naujinimo komanda gali grąžinti paveiktų eilučių skaičių, taip pat grąžina efektyvius duomenis naudodamas Grįžtantis skyrius .
Toliau pateikta komanda naudojama atnaujinti eilutę su Dept_id 1 viduje skyriaus lentelė ir grąžinti atnaujinti duomenys .
UPDATE department SET description = 'Names of departments', location = 'NewYork' WHERE dept_id = 1 RETURNING dept_id, description, location;
Įvykdę aukščiau pateiktą komandą, gausime žemiau pateiktą lentelės struktūrą:
Po to naudosime komandą Select, kad patikrintume atnaujintus duomenis skyriaus lentelė:
SELECT * FROM department WHERE dept_id = 1;
Kai vykdysime aukščiau pateiktą pasirinkimo užklausą, gausime toliau pateiktą išvestį: