2012-04-28 7 views
34

Sto tentando di cancellare una colonna per tutti i record nella tabella. Ad esempio, se la mia tabella avesse tre colonne: id, comment e likes - Vorrei essere in grado di cancellare la colonna likes.Impostazione del valore per una colonna di tutti i record nella tabella

+---+-------+-----+ 
|id |comment|likes| 
+-----------------+ 
|1 |hi  |3 | 
|2 |hello |12 | 
|3 |hey |1 | 
+---+-------+-----+ 

in modo che in seguito si sarebbe simile a questa:

+---+-------+-----+ 
|id |comment|likes| 
+-----------------+ 
|1 |hi  |  | 
|2 |hello |  | 
|3 |hey |  | 
+---+-------+-----+ 

Sto indovinando avrei dovuto usare MySQL UPDATE per cancellare il valore likes, ma come faccio a scorrere tutti i record e mantenere i campi id e comment sono gli stessi?

Non voglio modificare manualmente ciascun record.

risposta

56
update your_table set likes = null 

o se la vostra colonna likes non permette null:

update your_table set likes = '' 

Alcuni strumenti di SQL che vengono utilizzati per l'esecuzione di query DB impedire gli aggiornamenti su tutti i record (query senza una clausola where) per impostazione predefinita. È possibile configurare e rimuovere che tale impostazione savety oppure è possibile aggiungere una clausola where che è true per tutti i record e aggiornare tutti in ogni caso come questo:

update your_table 
set likes = null 
where 1 = 1 
+0

Grazie, pensato che sarebbe stato qualcosa di semplice .. Io accetterò questo non appena posso :) – user1199434

Problemi correlati