sql >> Database >  >> RDS >> Mysql

Wat is de standaard selectievolgorde in PostgreSQL of MySQL?

Ik kan antwoorden voor MySQL. Ik weet het niet voor PostgreSQL.

De standaardvolgorde is over het algemeen niet de volgorde van invoegen.

In het geval van InnoDB hangt de standaardvolgorde af van de volgorde van de index die voor de query wordt gelezen. U kunt deze informatie uit het EXPLAIN-plan halen.

Voor MyISAM retourneert het bestellingen in de volgorde waarin ze uit de tabel worden gelezen. Dit misschien de volgorde van invoeging zijn, maar MyISAM zal hiaten hergebruiken nadat u records hebt verwijderd, zodat nieuwere rijen eerder kunnen worden opgeslagen.

Niets van dit alles is gegarandeerd; het is slechts een neveneffect van de huidige implementatie. MySQL zou de implementatie in de volgende versie kunnen veranderen, waardoor de standaardvolgorde van resultatensets anders wordt, zonder enig gedocumenteerd gedrag te schenden.

Dus als je de resultaten in een specifieke volgorde nodig hebt, gebruik dan ORDER BY op uw vragen.



  1. MySQL - overeenkomende en niet-overeenkomende resultaten in Where IN-query

  2. Wat is het verschil tussen MySQL BOOL- en BOOLEAN-kolomgegevenstypen?

  3. TypeError:kan methode 'query' van null niet aanroepen - bij het aanroepen van pg.connect met Heroku node.js

  4. JPA-kaart MySQL json-type, kreeg onleesbare string