17. august 2011 - 14:06Der er
5 kommentarer og 1 løsning
Langsom sql forespørgsel på mysql
Hej
Jeg har lidt et af et problem med en sql sætning som svare MEGET langsomt +50 sek.
Det er denne:
SELECT product.* FROM product,productnamealias where (product.EAN = '1234') or (productnamealias.name = '' and productnamealias.Productid = product.Id) limit 0,1
Hvis EAN blive sat til '' og name til et eller andet så køre den hurtigt nok, er begge udfyldt eller kun EAN (som vist) tager den meget lang tid.
Nogle ideer til hvorfor og hvordan det kan rette op?
(der er sat index på begge felter og både tabellen product og productnamealias indeholder omkring 300.000 rækker)
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Jeg er i tvivl om have du egenligt vil have som resultat, prøv denne og se om den giver det du forventer. Du må selv sætte order by og limit.
SELECT product.* FROM product,productnamealias where product.EAN = '1234' and productnamealias.name = '' and productnamealias.Productid = product.Id
Synes godt om
Slettet bruger
03. oktober 2011 - 11:33#6
hmm, blev nødtil at lave min database sturktur om.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.