Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Spalte aus großer Tabelle fallen lassen

Alles, was Sie tun, erfordert das Lesen und Schreiben von 38 Millionen Zeilen, also wird nichts wirklich schnell sein. Wahrscheinlich ist die schnellste Methode, die Daten in eine neue Tabelle zu packen:

create table newTable as
    select id1, id2
    from oldTable;

Oder, wenn Sie sicher sein wollen, dass Typen und Indizes erhalten bleiben:

create table newTable like oldTable;

alter table newTable drop column assocId;

insert into newTable(id1, id2)
    select id1, id2
    from oldTable;

Es ist jedoch normalerweise schneller, alle Indizes auf eine Tabelle zu löschen, bevor ein Bündel von Daten geladen wird, und die Indizes anschließend neu zu erstellen.