En aquest tutorial, aprendrem ACTUALITZACIÓ PostgreSQL ordre per actualitzar les dades actuals en una taula.
A PostgreSQL, s'utilitza l'ordre UPDATE per canviar els registres actuals en una taula . Per actualitzar les files seleccionades, hem d'utilitzar la clàusula WHERE ; en cas contrari, s'actualitzaran totes les files.
Sintaxi de l'ordre d'actualització
La sintaxi de l'ordre d'actualització és la següent:
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE condition;
Tenim els següents paràmetres, que s'utilitzen en la sintaxi anterior:
Paràmetres | Descripció |
---|---|
Actualització | És una paraula clau, que s'utilitza per actualitzar les files d'una taula. |
Nom_taula | Després de la clàusula UPDATE, utilitzarem aquest paràmetre per definir el nom de la taula per actualitzar les dades. |
Columna1 = valor1, Columna2 = valor2, ...... ColumnaN = valorN | S'utilitza per descriure a nom de la columna en una taula els valors de la qual s'han de modificar al fitxer CONJUNT clàusula. Podem utilitzar el coma (,) per separar cada parell de columna i valors . |
On | Farem servir el clàusula ON per filtrar els registres i obtenir només els registres essencials. |
Condició | És una expressió, que s'utilitza per retornar un valor de tipus booleà . I aquesta expressió torna veritat només per a files. |
Exemples de l'ordre d'actualització de PostgreSQL
Per a la nostra millor comprensió, veurem exemples PostgreSQL Actualització comandament .
java end for bucle
Prenem el taula del departament , que vam crear al Insereix la secció d'ordres .
En primer lloc, veurem l'estructura del taula del departament amb l'ajuda de l'ordre següent:
llista de creació de java
SELECT * FROM department;
Després d'executar l'ordre de selecció, obtindrem el següent resultat:
Exemple de taula PostgreSQL UPDATE
Aquí, modificarem el NUL valors de la darrera actualització columna a la Data corrent amb l'ajuda de l'ordre següent:
UPDATE department SET last_update = DEFAULT WHERE last_update IS NULL;
Tindrem el següent resultat, després d'executar l'ordre anterior:
A la consulta anterior, apliquem el paraula clau PREDEFECTADA fins al darrera actualització columna que pren el data corrent segons el valor predeterminat. I la clàusula ON actualitza només aquelles files on el darrera actualització el valor de la columna és NUL .
Exemple d'actualització de totes les files d'una taula mitjançant l'ordre Actualitza
Per actualitzar els valors en el columna d'ubicació com EUA per a totes les files del departament taula, fem servir l'ordre següent:
comparar amb la cadena
Nota: a l'ordre d'actualització següent, ignorem la clàusula WHERE:
UPDATE department SET location = 'U.S.A';
Després d'executar la consulta anterior, actualitzarà el fitxer columna d'ubicació en el taula del departament:
Farem servir el seleccionar l'ordre per verificar la sortida de l'ordre anterior al fitxer taula del departament:
select* from department;
I dins de la mateixa taula, també podem actualitzar les dades d'una columna des d'una columna addicional.
L'ordre següent s'utilitza per copiar el fitxer nom_departament els valors de la columna a columna de descripció del departament taula:
UPDATE department SET description = dept_name;
Un cop realitzem la consulta anterior, actualitzarà el fitxer columna de descripció en el taula del departament:
lexicogràficament
Després d'això, utilitzarem l'ordre select per veure el columna actualitzada (descripció) en el departament taula:
Exemple de l'ordre de combinacions d'actualització de PostgreSQL
Aquí agafarem el Taula departament_tmp , que té la mateixa estructura que el departament taula:
La següent comanda s'utilitza per actualitzar els valors, que provenen de l' taula del departament per a les columnes del departament_tmp taula:
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;
Un cop realitzem la consulta anterior, actualitzarà el fitxer Taula departament_tmp:
transmissió de mitjans
Per verificar el departament_tmp taula, farem servir el Seleccioneu comandament:
SELECT * FROM department_tmp;
I, obtindrem la següent sortida:
Nota: a l'ordre d'actualització anterior, hem utilitzat la clàusula FROM per descriure la segona taula (departament), que conté a l'actualització.
Aquí hem utilitzat la condició d'unió al fitxer clàusula ON . I de vegades, aquesta comanda UPDATE s'esmenta com ACTUALITZA INNER JOIN o ACTUALITZA JOIN ja que dues o més taules estan implicades en el ACTUALITZACIÓ comandament.
Actualitza l'ordre mitjançant la condició de retorn
Per defecte, el ordre d'actualització pot retornar el nombre de files afectades, i també retorna les dades eficients amb l'ajuda de Secció de tornada .
L'ordre següent s'utilitza per actualitzar la fila amb Dept_id 1 en el taula del departament i retornar el dades actualitzades .
UPDATE department SET description = 'Names of departments', location = 'NewYork' WHERE dept_id = 1 RETURNING dept_id, description, location;
Després d'executar l'ordre anterior, obtindrem l'estructura de la taula següent:
Després d'això, utilitzarem l'ordre select per comprovar les dades actualitzades al fitxer taula del departament:
SELECT * FROM department WHERE dept_id = 1;
Un cop executem la consulta de selecció anterior, obtenim la següent sortida: