Logo hr.boatexistence.com

Hoće li različito utjecati na performanse?

Sadržaj:

Hoće li različito utjecati na performanse?
Hoće li različito utjecati na performanse?

Video: Hoće li različito utjecati na performanse?

Video: Hoće li različito utjecati na performanse?
Video: Glazba i njezin utjecaj na performanse tijekom treninga | GymBeam | FIT POINT 2024, Svibanj
Anonim

Da, budući da će korištenje DISTINCT (ponekad prema komentaru) uzrokovati naručivanje rezultata Razvrstavanje stotina zapisa zahtijeva vrijeme. Pokušajte GROUP BY sve svoje stupce, to ponekad može dovesti do toga da optimizator upita odabere učinkovitiji algoritam (barem sam s Oracleom primijetio značajno povećanje performansi).

Je li loše koristiti različito?

Pa, nepravilna upotreba "različitih" ne samo da skriva pravi problem (duplikati unosa u tablice, nedostatak uvjeta u klauzuli on) kao što je gore objašnjeno, već i smanjuje performanse upita… Ovo će značajno povećati IO cijenu (logičko čitanje) upita.

Usporava li različit upit?

Vrlo malo upita može raditi brže u SELECT DISTINCT načinu rada, a vrlo malo će raditi sporije (ali ne značajno sporije) u SELECT DISTINCT načinu rada, ali je u kasnijem slučaju vjerojatno da će aplikacija možda morati ispitati duple slučajeve, što prebacuje teret izvedbe i složenosti na aplikaciju.

Je li bolje koristiti različite ili GROUP BY?

U MySQL-u, DISTINCT izgleda malo brže od GROUP BY ako polje nije indeksirano. DISTINCT eliminira samo duple retke, ali čini se da ih GROUP BY dodatno sortira.

Zašto ne bismo trebali koristiti različit u SQL-u?

Ako je odabir različitog tu da 'popravi' problem, vjerojatno ćete zauzvrat dobiti lošu izvedbu. GROUP BY vam omogućuje korištenje agregatnih funkcija, kao što su AVG, MAX, MIN, SUM i COUNT. DISTINCT samo uklanja duplikate.

Preporučeni: