Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Qual é a ordem de seleção padrão no PostgreSQL ou MySQL?


Eu posso responder pelo MySQL. Eu não sei para o PostgreSQL.

A ordem padrão não é a ordem de inserção, geralmente.

No caso do InnoDB, a ordem padrão depende da ordem do índice lido para a consulta. Você pode obter essas informações no plano EXPLAIN.

Para MyISAM, ele retorna pedidos na ordem em que são lidos na tabela. Isso pode ser a ordem de inserção, mas o MyISAM reutilizará as lacunas após a exclusão dos registros, portanto, as linhas mais recentes podem ser armazenadas mais cedo.

Nada disso é garantido; é apenas um efeito colateral da implementação atual. O MySQL pode alterar a implementação na próxima versão, tornando a ordem padrão dos conjuntos de resultados diferente, sem violar nenhum comportamento documentado.

Portanto, se você precisar dos resultados em uma ordem específica, use ORDER BY em suas consultas.