sql >> Databáze >  >> RDS >> Mysql

Jak mysql objednává řádky se stejnou hodnotou?

Nedoporučoval bych takový předpoklad. Ve standardním SQL cokoliv, co není vyžadováno explicitním ORDER BY klauzule je závislá na implementaci.

Nemohu mluvit za MySQL, ale na např. SQL Server, výstupní pořadí pro řádky, které jsou "stejné" až do ORDER BY se může při každém spuštění dotazu lišit – a může být ovlivněno prakticky čímkoli (např. úrovní opravy/servisního balíčku serveru, zátěží, které stránky jsou aktuálně ve fondu vyrovnávacích pamětí atd.).

Pokud tedy potřebujete pro konkrétní objednávku, nejlepší věc, kterou můžete udělat (jak ji zaručit, tak zdokumentovat svůj dotaz pro budoucí správce), je výslovně požádat o objednávku, kterou chcete.



  1. Náhodný PRIMÁRNÍ KLÍČ pro Innodb

  2. Nástroj GUI pro PostgreSQL

  3. Vytvořte uživatele z řetězcových proměnných v bloku PL/SQL

  4. Upozornění:mysqli_connect():(HY000/1045):Přístup odepřen pro uživatele 'username'@'localhost' (pomocí hesla:ANO)