sql >> Databasteknik >  >> RDS >> Mysql

infoga data i en ny kolumn i en redan existerande tabell

Ok, efter lite konversation genom kommentarerna, låt oss gå till ett svar.

Jag antar att din tabell är något som id, name, age, dateBirth, etc fields . Men den som skapar den här tabellen glömmer att lägga till könet för registren. Som du sa att den nya kolumnen är en sex enum('m', 'f') du måste uppdatera varje register på denna tabell en efter en. Så här:

 update matches set sex = 'm' where id = 1;

Var uppmärksam på att jag med det här kommandot just uppdaterade raden i tabellen där id=1 och jag antar att id är din primära nyckel. På where caluse måste du lägga din primärnyckel, annars kan du uppdatera mer än en kolumn.

Om ditt bord har många register finns det ett sätt att göra det genom att minska det tunga arbetet (åtminstone lite)

För att uppdatera många rader samtidigt måste du göra en uppdatering med ett GILLA-filter, du kommer att ställa in ett filter som kan identifiera många kvinnor åt gången sedan många män åt gången som detta:

 update matches set sex = 'f' where name like '%Jheniffer%'

Eftersom Jheniffer är ett kvinnonamn kommer du troligen att uppdatera varje register som har en del av namnet som Jheniffer som "Jheniffer Smith". Så upprepa denna process för de vanliga namnen tills arbetet är klart. För alla kvinnor, upprepa sedan för män.

Hoppas det hjälper dig att förstå



  1. Zend_Db:Hur får man ut antalet rader från en tabell?

  2. Vad är det verkliga värdet av att ta in Microsoft Access i din organisation?

  3. Hur får man SQL_CALC_FOUND_ROWS-värdet med hjälp av förberedda satser?

  4. Ändra unik nyckel tillsammans i mysql