По кой начин се търси по-бързо в бд

kWo_2

Registered
Като му задам точен параметър на дадено поле, или като му задам параметър от полето - примерно имам 1231 и му задам да търси след второто число 3 и ще изведе резултатите от него.

Дали като му задам да си търси от поле, което е със стойност 3, ще търси по-бързо в дб-то от колкото втория начин :?
 
Но на мен не ми трябва с jQuery, а просто питам по кой начин би се търсило по-бързо в дб. Като му задам параметър само с едно число 3, или ако в полето имам 1234 и му задам да търси след второто число - тоест 3 и ще изведе резултатите от него
 
Аха. Еми значи имам поле`test` int(4) и се питам следното..

Значи ето двата варианта за които говоря:

1. В полето test имам запис "3"
2. В полето test имам запис "1231"

При от първия вариант търся с WHERE поле='3'
При вротия вариант търся с WHERE SUBSTRING(поле, 1, 3) = '3'

Ta въпросът ми е, кой от тези два начина е по-удачен за търсене?
 
Не е така, защото от 1234 може примерно 3 да се повтаря - 3134

Еми не знам как да го обесня .. Дадох двата варианта с които може и искам да разбера с кой от двата се търси по-бързо
 
kWo_2 каза:
Не е така, защото от 1234 може примерно 3 да се повтаря - 3134

Еми не знам как да го обесня .. Дадох двата варианта с които може и искам да разбера с кой от двата се търси по-бързо


И какво като се повтаря, то пак ще ти изкара резултата. Нещо сам не можеш да разбереш какво искаш.
 
Определено е първото. Другите варианти са много по-бавни, защото трябва да се изпълняват операции с полетата. Първото дори не се налага да преравя всички ако имаш индекси.
 
StormBreaker каза:
Определено е първото. Другите варианти са много по-бавни, защото трябва да се изпълняват операции с полетата. Първото дори не се налага да преравя всички ако имаш индекси.

Това исках да разбера. Мерси :?:
 

Back
Горе