În cazul în care bazat pe câmp calculat

Există un tip de cerere
Selectați T1. *, [VYCHISLYAEMOE_VYRAZHENIE] ca domeniu de la T1 unde.

Și apoi mi-ar trebui să compare câmpul câmp calculat cu valoarea de referință, dar







În câmpul vizual = „ceva“ conduce la faptul că mySQL se plânge că alunița este nici un astfel de câmp (câmp).

Desigur, funcționează dacă specificați unde [VYCHISLYAEMOE_VYRAZHENIE] = _ „something'_,
dar această expresie este într-adevăr destul de mare.

Problema este că, dacă este posibil fir evaluarea expresiei utilizate în cazul în care?

Sau prin [VYCHISLYAEMOE_VYRAZHENIE] = something'_ _“, fie prin a avea.
Ideea în acest caz, nu este prea mare diferență de performanță (în cazul în care expresia este foarte mare, și funcționează cu câmpuri nesolko), ca MySQL, în orice caz, trebuie să facă calculul acestei expresii pentru fiecare domeniu. Deci, cu Având, este probabil să fie chiar mai repede.







Și de a folosi opțiunea mai repede.

După 2 ore 44 minute [mod] Cyril [Kirk] Korolev [dosar]

după 20 minute [mod] Evgeny Bondarev aka Eugene Bond [dosar]

Desigur, funcționează dacă specificați unde [VYCHISLYAEMOE_VYRAZHENIE] = _ „something'_,
dar această expresie este într-adevăr destul de mare.

după 34 minute [mod] Rom McRitsky [dosar]

Chiril [de Kirk] Korolev [dosar]
Cu @a - au încercat. Acesta este primul lucru care a venit în minte. Acesta nu funcționează corect. UNDE efectuate înainte de @a este definit, pentru a determina valoarea pe care trebuie să fie incluse în parte a grupului BY.

Dmitry Popov [dosar]
După ce a fost gândit prin bine. Dar faptul că cererea merge gruparea pe teren. Dacă utilizați având, IMHO este necesar pentru a elimina GROUP BY (care este prezent în cerere), deoarece Care a efectuat după eșantionare. uvlichit semnificativ timpul de execuție interogare.

Probabil, este necesar să părăsească expr așa cum este - în forma sa cea mai pură. De fapt, acolo pentru calcule MySQL asociate cu baza un pic de viteză nu va încetini, am vrut să reducă lungimea șirului de interogare.

Datorită tuturor răspuns. Poate că acest subiect poate fi închis.