sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL - items ophalen in de volgorde waarin ze zijn opgeslagen

Om het juiste antwoord van Mark uit te breiden:PostgreSQL houdt geen tijdstempel van een rij bij en ook geen rijen in een bepaalde volgorde. Tenzij u uw tabellen definieert met een kolom die het tijdstempel bevat waarop ze zijn ingevoegd, is er geen manier om ze te selecteren in de volgorde waarin ze zijn ingevoegd.

PostgreSQL zal ze vaak retourneren in de volgorde waarin ze hoe dan ook zijn ingevoegd, maar dat is gewoon omdat ze toevallig in die volgorde op de schijf staan. Dit verandert als je update doet s op de tafel, of deletes dan later insert s. Bewerkingen zoals vacuum full verander het ook. U mag nooit, maar dan ook nooit op de bestelling vertrouwen zonder een expliciete order by clausule.

Als u wilt dat het invoegtijdstempel voor rijen binnen een transactie verschilt, kunt u clock_timestamp gebruiken in plaats van now() . Gebruik ook de SQL-standaard current_timestamp in plaats van now() . te schrijven .




  1. MySQL - Maak een bestaand veld uniek

  2. MySQL en PHP:UTF-8 met Cyrillische tekens

  3. CodeIgniter configureert verschillende IP-adressen voor LEES en SCHRIJF MySQL-gegevens

  4. URL herschrijven met .htaccess dubbele mysql-vermeldingen maken