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

indsætte data i en ny kolonne i en allerede eksisterende tabel

Ok, lad os gå til et svar efter en samtale gennem kommentarerne.

Jeg formoder, at din tabel er noget som id, name, age, dateBirth, etc fields . Men den, der opretter denne tabel, glemmer at tilføje køn for registrene. Som du sagde, er den nye kolonne en sex enum('m', 'f') du bliver nødt til at opdatere hvert register på denne tabel én efter én. Sådan:

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

Vær opmærksom på, at jeg med denne kommando lige har opdateret rækken i tabellen, hvor id =1, og jeg antager, at id er din primære nøgle. På where caluse skal du sætte din primære nøgle, ellers kan du opdatere mere end én kolonne.

Hvis dit bord har mange registre, er der en måde, hvorpå du kan gøre det ved at skære ned på det tunge arbejde (i det mindste lidt)

For at opdatere mange rækker på én gang skal du lave en opdatering med et LIKE-filter, du vil indstille et filter, der kan identificere mange kvinder ad gangen og derefter mange mænd ad gangen som dette:

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

Da Jheniffer er et kvindenavn, vil du højst sandsynligt opdatere hvert register, som har en del af navnet som Jheniffer som 'Jheniffer Smith'. Så gentag denne proces for de almindelige navne, indtil arbejdet er færdigt. For alle kvinder så gentag for mændene.

Håber det hjælper dig til at forstå



  1. Brug Moodle til at oprette brugere og tilmelde dem til kurser via SQL

  2. Boganmeldelse:Benjamin Nevarez:Query Tuning &Optimization

  3. Opdater aktivitetsdata fra tjenesten, når den er sat på pause

  4. 3 måder at få månedens navn fra en dato i MariaDB