Mysql
 sql >> Database >  >> RDS >> Mysql

Aggiorna query per aggiornare le righe in MySQL

Questo tutorial fa parte della serie Learn Basic SQL Query Using MySQL. In questo tutorial, discuteremo delle query SQL per aggiornare le righe o dati di una tabella in MySQL.

Aggiorna query

Il comando AGGIORNA può essere utilizzato per modificare o aggiornare le righe di una tabella utilizzando la parola chiave SET. Nel caso in cui tu abbia effettuato l'accesso remoto al database, avrai anche bisogno del privilegio UPDATE per la tabella per poter leggere le righe da una tabella.

# UPDATE - Syntax
UPDATE `table_name` SET `column_1` = <value>, `column_2` = <value> ... [WHERE <single or multiple filter conditions>];

Spiegazione della query

Il comando MySQL AGGIORNA può essere utilizzato per modificare righe o dati del nome tabella specificato in cui il nome della colonna, il valore della riga e il nome della tabella sono obbligatori. Il SET è necessaria la parola chiave per impostare il nuovo valore della colonna.

Dobbiamo specificare almeno una colonna e il suo nuovo valore durante l'utilizzo della query UPDATE. Il valore deve essere racchiuso tra virgolette singole nel caso si tratti di un valore stringa.

È inoltre necessario specificare le condizioni da considerare durante l'aggiornamento delle righe. L'utilizzo della clausola WHERE con il comando UPDATE è necessario dove è necessario aggiornare selettivamente le righe che è lo scenario ideale. Possiamo omettere l'utilizzo di WHERE durante l'utilizzo del comando UPDATE, ma ciò comporterà problemi di prestazioni nel caso in cui i dati della tabella siano di grandi dimensioni.

Esempi

Questa sezione fornisce esempi per aggiornare le righe della tabella utilizzando il comando UPDATE. Utilizzare la query di seguito menzionata per creare la tabella utente con l'ID, il nome, il cognome e le colonne attive per memorizzare i dati dell'utente.

# Create the User Table
CREATE TABLE `enterprise`.`user` (
`user_id` BIGINT NOT NULL,
`first_name` VARCHAR(45) ,
`last_name` VARCHAR(45),
`active` TINYINT(1) NOT NULL DEFAULT 0,
PRIMARY KEY (`user_id`));

La query sotto indicata può essere utilizzata per inserire dati nella tabella utente.

# Insert Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`, `active` ) VALUES
( 1, 'John', 'Smith', 1 ),
( 2, 'Rick', 'Jones', 1 ),
( 3, 'Catherine', 'Ponting', 0 ),
( 4, 'Harsh', 'Upadhyay', 1 ),
( 5, 'Tajwinder', 'Singh', 0 );

La suddetta query inserirà 5 righe nella tabella con id, nome, cognome e colonne attive per rappresentare 5 diversi utenti.

Ora aggiorneremo i dati da noi inseriti nella tabella utente. Può essere fatto usando il comando UPDATE come mostrato di seguito.

# UPDATE - Activate all the inactive users - without key column
UPDATE `user` SET `active` = 1 WHERE `active` = 0;

# Notes - Workbench - You might need to disable safe updates in case the primary key is not used in WHERE clause
SET SQL_SAFE_UPDATES = 0;
UPDATE `user` SET `active` = 1 WHERE `active` = 0;
SET SQL_SAFE_UPDATES = 0;

# Result
1 John Smith 1
2 Rick Jones 1
3 Catherine Ponting 1
4 Harsh Upadhyay 1
5 Tajwinder Singh 1


# UPDATE - Deactivate selective users - with key column
UPDATE `user` SET `active` = 0 WHERE `user_id` = 1;
UPDATE `user` SET `active` = 0 WHERE `user_id` IN( 3, 5 );

# Result
1 John Smith 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0

Le query sopra menzionate aggiornano la tabella utente utilizzando la clausola WHERE. Le righe della tabella verranno aggiornate nel caso in cui la riga soddisfi le condizioni indicate.

Possiamo anche aggiornare più valori di colonna come mostrato di seguito.

# UPDATE - Modify first name and last name of first user
UPDATE `user` SET `first_name` = 'Roy', `last_name` = 'Jordan' WHERE `user_id` = 1;

# Result
1 Roy Jordan 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0

Ecco come possiamo modificare i dati memorizzati nelle tabelle MySQL.