sql >> Databasteknik >  >> RDS >> Mysql

Hur avgör man vad som är mer effektivt:DISTINKT eller VAR FINNS?

Använd EXISTS istället för DISTINCT

Du kan undertrycka visningen av dubbletter av rader med DISTINCT; du använder EXISTS för att kontrollera om det finns rader som returneras av en underfråga. När det är möjligt bör du använda EXISTS istället för DISTINCT eftersom DISTINCT sorterar de hämtade raderna innan de dubblerade raderna undertrycks.

i ditt fall skulle det finnas många duplicerade data, så det borde gå snabbare.

av http://my.safaribooksonline.com/ book/-/9780072229813/high-performance-sql-tuning/ch16lev1sec10




  1. Gå från databas till sessioner

  2. Ta bort Mysql-raden efter angiven tid

  3. MySQL-parameteriserade frågor

  4. Skapa en SQL Server-databas med Azure Data Studio