sql >> Databasteknik >  >> RDS >> PostgreSQL

Postgres INSERT INTO med SELECT-beställning

Jag frågade på Postgres e-postlista och de var hjälpsamma med att förtydliga. Det visar sig att detta är ett databasspecifikt svar, så om du läser detta och använder en annan databas kanske svaret inte är detsamma.

Postgres, uttryckligen från och med 9.6, kommer logiskt att infogas i ordningen för den returnerade resultatuppsättningen.

Beteendet är uttryckligen kodifierat i denna commit:https://github.com/postgresgres/post.com commit/9118d03a8cca3d97327c56bf89a72e328e454e63

Från commit-beskrivningen:

tl;dr; Insättningsordningen är en implementeringsdetalj, men målmedvetet kodad i Postgres 9.6 och högre för att matcha ens intuition. Före 9.6 fanns det inga garantier.



  1. Hur går jag igenom mysql-resultatuppsättningen i fatfree-ramverket?

  2. Minimalt exempel på användning av select... för uppdatering för att isolera rader

  3. Lista över språk som stöds av Oracle Database

  4. PostgreSQL 9.5 - avkoda / välj skiftläge för att lösa fel med utf8 fungerar inte