Fórum Root.cz
Hlavní témata => Server => Téma založeno: Vladimír Drgoňa 14. 09. 2012, 12:18:58
-
MySQL:
CONCAT(a,b,c)=CONCAT(aa,bb,cc)
alebo
a=aa AND b=bb AND c=cc
Čo bude rýchlejšie, keď a,b,c sú polia tabuľky a existuje index a+b+c? aa, bb a cc sú lokálne premenné v procedure na MySQL serveri.
-
Jestli je to hádanka, tak odpovídám: druhá varianta.
-
Jestli je to hádanka, tak odpovídám: druhá varianta.
Nie, ale neviem sa rozhodnúť, keďže polia majú iba spoločný index.
-
Navíc první varianta může vracet více výsledků (i chybné), než varianta druhá. A onen společný index druhou variantu právě urychlí.
-
Navíc první varianta může vracet více výsledků (i chybné), než varianta druhá. A onen společný index druhou variantu právě urychlí.
jo, pripadne treba pouzit nejake delimitery ale to uz zachazame uplne mimo
napriklad tieto dva riadky budu identicke pre Concat
a=1 b=21 c=3
a=1 b=2 c=13
-
napriklad tieto dva riadky budu identicke pre Concat
a=1 b=21 c=3
a=1 b=2 c=13
Samozrejme o takomto prípade viem, ale táto možnosť nemôže nastať, pretože ide o stringy s konštantnou dĺžkou.
Už som použil II. možnosť, s rýchlosťou som spokojný. Ďakujem za pomoc.
-
a co hovori explain select ?
-
a co hovori explain select ?
Neskúšal som, select je súčasťou väčšej procedure, kde všetko beží v cykle a jedným cursorom a v každom cykle idú 4 selecty takéhoto typu. Cursor má cca 10 000 riadkov a celé to peží pár sekúnd, takže pohoda.