|
|
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Я уже раз описывал проблемку, но разумного решения мне ее так и не предложили:( имеется запрос select e_code from e164 where '380512111' like e_code || '%'; либо (разницы в скорости никакой) select e_code from e164 where '380512111' starting with e_code; при его выполнении индексы не используются. что можно сделать в этой ситуации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:59 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Может имелось в виду select e_code from e164 where e_code like '380512111%'; и select e_code from e164 where e_code starting with '380512111'; ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 14:12 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Johnmen если бы это имелось в виду, то так и писалось бы просто select e_code from e164 where e_code starting with '380512111'; вернет NULL а select e_code from e164 where '380512111' starting with e_code; 3 380 ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 14:15 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
авторselect e_code from e164 where e_code starting with '380512111'; вернет NULL а select e_code from e164 where '380512111' starting with e_code; 3 380 ... Ух-ты !!! А может все как раз наоборот, а ? Первый раз вижу конструкцию : Код: plaintext Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 14:34 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
vitvshпри его выполнении индексы не используются. что можно сделать в этой ситуации? 1. Не использовать такой запрос. 2. Смирится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 14:41 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Dnico не наоборот. посмотри 2 all а все-таки, как запрос лучше перестроить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 15:46 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
А первого символа константы не достаточно? (просто интересуюсь) Или нескольких? Типа так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 15:57 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
авторпри его выполнении индексы не используются И не должны. И никогда не будут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 15:58 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Всегда NULL, хотя ID 700 701 702 703 704 705 Что-то я не пойму ? Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:05 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Поменяй местами перед с задом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:08 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
наоборот... ID starting with '70' а то, что написано выбирает только ID 7 и 70 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:10 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Я ведь читаю у автора ...\r /topic/80031#575321\r Вот так и делаю ....\r Или у меня глюки на экране ?\r \r Best regards,\r Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:12 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Dnico у тебя значение ID по длине больше '70' а в select e_code from e164 where '380512111' starting with e_code; e_code заведомо меньше '380512111' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:14 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Брал и 7000000000000 - не получается ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:16 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
тем не менее он работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:19 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
А версия какая сервера? Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:20 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
А ты пробовал то что я тебе тогда писал? авторselect e_code from e164 where e_code starting with '3' and '380512222222' like e_code '%'; Ещё можешь попробовать поэкспериментировать и сделать так (это только теория): select e_code from e164 where e_code between '3' and '380512222222' and '380512222222' like e_code '%'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:20 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Dnico Yafiil 2 Gold пробовал, но при том, что в таблице 4122 записей select e_code from e164 where e_code starting with '3' and '380512222222' like e_code '%'; производит 3500 IR, то есть выигрыша почти нет у этого IR - 500, но выполняется дольше select e_code from e164 where e_code between '3' and '380512222222' and '380512222222' like e_code '%'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:29 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
Блин !!! У меня не работает. FB стоит. Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:33 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Gold насчет времени я ошибся, но только если задать например вот так, то получим тоже самое, что и было по IR select e_code from e164 where e_code between '3' and '3999999999' and '3999999999' like e_code '%'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:34 |
|
||
|
Еще раз Like
|
|||
|---|---|---|---|
|
#18+
2 Dnico select ID from goods where '70000' STARTING WITH ID 7 70 700 ..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 16:37 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32440294&tid=1579045]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
180ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
2ms |
| others: | 231ms |
| total: | 493ms |

| 0 / 0 |
