sql >> Database >  >> RDS >> Mysql

gegevens invoegen in een nieuwe kolom van een reeds bestaande tabel

Oké, laten we na een gesprek via de opmerkingen naar een antwoord gaan.

Ik veronderstel dat je tabel zoiets is als id, name, age, dateBirth, etc fields . Maar wie deze tabel heeft gemaakt, vergeet het geslacht voor de registers toe te voegen. Zoals je zei, is de nieuwe kolom een ​​sex enum('m', 'f') u zult elk register in deze tabel één voor één moeten bijwerken. Zoals dit:

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

Let op dat ik met dit commando zojuist de rij in de tabel heb bijgewerkt waar de id =1 en ik neem aan dat id je primaire sleutel is. Op de plaats waar u uw primaire sleutel moet plaatsen, anders kunt u meer dan één kolom bijwerken.

Als uw tafel veel registers heeft, is er een manier waarop u dit kunt doen door het zware werk (tenminste een beetje) te verminderen

Om veel rijen tegelijk bij te werken, moet je een update uitvoeren met een LIKE-filter, je stelt een filter in dat veel vrouwen tegelijk kan identificeren en veel mannen tegelijk als volgt:

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

Aangezien Jheniffer een vrouwelijke naam is, zult u hoogstwaarschijnlijk elk register bijwerken dat een deel van de naam heeft als Jheniffer, zoals 'Jheniffer Smith'. Herhaal dit proces dus voor de algemene namen totdat het werk klaar is. Voor alle vrouwen, herhaal dan voor de mannen.

Ik hoop dat het je helpt om het te begrijpen



  1. PHP zet komma om in een <br />

  2. Zal MySQL verwijderde ID's hergebruiken wanneer Auto Increment wordt toegepast?

  3. Rails:PG-edelsteen installeren op OS X - fout om native extensie te bouwen

  4. MySQL-fout bij het maken van een externe sleutel met Laravel-migratie