There are obviously workarounds for this, but I'm wondering why the
following query shouldn't work. It seems like it should. With MVCC already
present on the back-end, I can't see any reason other than additional
parsing routines that this couldn't work:

INSERT INTO old_login_id_to_new_account_id(new_account_id, old_login_id)
INSERT INTO accounts(id, username, password_hash, email) SELECT DEFAULT,
username, password_hash, email FROM logins_old RETURNING id, logins_old.id;

Anyway, I'm sure there are more important features for Postgres (like
upserts, unique indexes on GIN, Gist and hash, fixed arrays, compact
storage of enum arrays as bitfields, etc.) I just thought it was an
interesting idea.

Reply via email to