|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Столкнулся со странной ( для меня ) проблемой. есть таблица, с ключевым счетчиком и числовым полем. в таблице 500 000 записей - в числовом поле или есть цифра от одного до десяти или ее нет. на всякий случай сделал индекс и в счетчике и в числовом поле код число 1 1 2 1 3 2 4 5 1 запросы делал в конструкторе. Код: sql 1.
делает пару секунд но если сделать так Код: sql 1.
делает мгновенно почему так происходит? если так выбирать - тоже мгновенно ищет Код: sql 1.
просто запрос на выборку должен быть с более сложным условием, но даже такой простой выполняется долго. от сюда возникает второй вопрос. такая выборка тоже происходит долго - несколько секунд. както можно ее оптимизировать чтобы ускорить? Код: sql 1.
Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 22:07 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar почему так происходит? что происходит? какой результат запроса ? (или всем нужно сделать табличку, ввести туда данные, сделать запрос, увидеть результат)... расшифруй обычными словами условие в WHERE (что ты там пытаешься фильтровать) Вот честно - впадлу собирать тренажер... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 04:50 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar ... такая выборка тоже происходит долго - несколько секунд. както можно ее оптимизировать чтобы ускорить? Код: sql 1.
Спасибо! Не знаю насчет "оптимизировать", но вижу, что эта конструкция сводится к такому выражению: Код: sql 1.
Что бы это ни значило. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 10:35 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar такая выборка тоже происходит долго - несколько секунд. както можно ее оптимизировать чтобы ускорить? Функция во WHERE - это фуллскан. У Access, видимо, недостаточно мозгов, чтобы расплести эту заумь и избавиться от константного IIF. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 11:40 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
vmag, разная скорость выполнения одного и того же запроса если фильтровать по -1 или по yes SELECT [число]=1 AS z FROM Таблица WHERE ((([число]=1)= -1 )); делает пару секунд но если сделать так SELECT [число]=1 AS z FROM Таблица WHERE ((([число]=1)= Yes )); выполняется мгновенно я запрос упростил то одного столбца с цифрами, по которому фильтруется и при котором появляется такой разброс во времени обработки. не знаю как еще его упростить чтобы тут на форуме поняли. результатом запроса буде ( относительно таблицы из поста) 1 1 1 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 13:57 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar Yes ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 14:32 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Панург, я вроде писал что делал запросы в конструкторе. и там он упешно писал ес ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 14:56 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar результатом запроса буде ( относительно таблицы из поста) 1 1 1 а зачем эти -1 и yes ? просто ([число]=1) не гламурно ? "Событие" же само по себе уже и так равно и Yes и -1 и True в случае если [число]=1 ибо это истина... Вам нужно типа этого: Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 18:03 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar SELECT [число]=1 AS z ... результатом запроса буде ( относительно таблицы из поста) 1 1 1 Не будет. Будет -1 (минус единица). В этом запросе выводится результат логической операции сравнения - а это либо 0 (False), либо -1 (True). Так что же даст сравнение в данном конкретном случае? Конечно, только True, то есть, -1. Почему? А вот почему - в силу условия WHERE, которое требует, чтобы отбирались только те записи, где [число]=1. Вы, вероятно, немножко перемудрили с "упрощением" своего запроса. Лучше словами напишите, что в запросе должно выводиться, и при каких условиях. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 19:33 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
__Michelle, да - правильно -1. я потом уже заметил, не успел исправить. тут не важно что в итоге выводится, просто заметил что разная скорость если в условии -1 или true, при одном и том же запросе. и поэтому обрезал запрос по максимуму чтобы можно было легко отследить это разное время. основной вопрос - почему так получается. это чисто спортивный интерес, для общего развития. чтобы понять - это бак аксесса или чтото большее )) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 23:20 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
vmag Nezar результатом запроса буде ( относительно таблицы из поста) 1 1 1 а зачем эти -1 и yes ? просто ([число]=1) не гламурно ? "Событие" же само по себе уже и так равно и Yes и -1 и True в случае если [число]=1 ибо это истина... Вам нужно типа этого: Код: vbnet 1.
[число]=1 - гламурно, но как я уже написал - это чисто спортивный интерес. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2021, 23:24 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar - это чисто спортивный интерес. так иди дальше на рекорд, исследуй ситуацию, пиши рекламации... SELECT [число]=1 AS z FROM Таблица WHERE ((((((([число]=1)=Yes)=Yes)=Yes)=Yes)=Yes)); ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 00:56 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
vmag, это такой вариант ответа - когда нет ответа? может тогда не стоит? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 11:57 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
А Вы почитайте справку про SELECT и "вкурите" что там должно быть только ИМЯ поля(если надо с алиасом,но никак не условие: число=1) а уж отбор в WHERE (и абсолютно фиолетово будет там TRUE или -1) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:18 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar, SELECT IIf(1=1,[число]=1,[число]=2) Улыбнуло IIF(<условие>, <выражение, если условие истинно>, <выражение, если условие не истинно>) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:29 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
ROI, Меня тоже ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:32 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
sdku, а вы перечитайте вопрос внимательно и "вкурите" что "число" - это название поля. и как оказалось не фиолетово TRUE или -1 я привел реальные запросы из реальной таблицы с реально разной скоростью выполнения запроса. по моему чем проще пишеш запрос и чем подробнее описываешь проблему - тем сложнее она для понимания местных "гуру" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:40 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
ROI, и что же вас тут позабавило? не возможность выполнения такого условия? приведите лучше пример как сделать выборку с условием без такой конструкции. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:42 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar vmag, это такой вариант ответа - когда нет ответа? может тогда не стоит? А что, вам, не понравилось в ответе? Каой вопрос с примером, такой и ответ с примером ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:43 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
видео процесса ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:44 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar а вы перечитайте вопрос внимательно и "вкурите" что "число" - это название поля. да ну???? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:45 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
ROI, к сожалению я вижу только вашу не способность, в очередной раз, понять простой вопрос, и как следствие ваши посты как всегда ни о чем. троль? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:47 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
ROI Nezar а вы перечитайте вопрос внимательно и "вкурите" что "число" - это название поля. да ну???? И откуда SQL знает что число 1 это название поля. Пытается вас понять(вот и думает долго) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 13:49 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar ... приведите лучше пример как сделать выборку с условием без такой конструкции. Тогда, может, как-то так: Код: sql 1. 2. 3. 4.
На всякий случай (а то уже напридумывали): тут 1 - просто единица, никакое не название поля. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 14:27 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar, [число]-это поле,а [число]=1 это условие.Больше слов нет.... знак "=" это оператор сравнения ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 20:12 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
PS:Это из HELPа который надо читать чтоб не задавать такие вопросы и пытаться втолковать отвечающему что он даун: -операторм сравнения является один из следующих операторов: <, >, =, <=, >=, <>, Between…And, Like, In. -арифметические операторы ( +, -, *, / ) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2021, 23:48 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
sdku, Рад что вы знаете такие вещи. но какое это отношение имеет к теме вопроса? или вы тупо посты набиваете? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2021, 15:18 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
Nezar, А я очень сожалею что "бараны" глупыми высказываниями которых забит весь интернет добрались и до этого форума. Составить абсолютно неправильно инструкцию SQL (сравнение в SELECTе) и спрашивать почему запрос "не так" работает (удивительно что он вообще работает)-это сильно. А людям которые Вам пытаются что-то объяснить и помочь присваивать "высокое" звание троля или "тупо набивающего посты"-это еще сильнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 00:31 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
sdku ...Составить абсолютно неправильно инструкцию SQL (сравнение в SELECTе) ... Иногда и это требуется. Нормальная конструкция. sdku ...и спрашивать почему запрос "не так" работает... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 02:35 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
__Michelle, Код: vbnet 1. 2. 3.
Из HELP: минимальный синтаксис инструкции SELECT: SELECT поля FROM таблица (в последних версиях кажись еще короче-без слова "SELECT"-точно не помню) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 11:52 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
__Michelle ... ....Нормальная конструкция.... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 12:07 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
В любом запросе будет работать. Ничего там страшного нет. Сплошь и рядом так делают. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 12:34 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
__Michelle В любом запросе будет работать. Ничего там страшного нет. Сплошь и рядом так делают. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 18:13 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
sdku __Michelle В любом запросе будет работать. Ничего там страшного нет. Сплошь и рядом так делают. Как же не документировано? https://support.microsoft.com/ru-ru/office/access-sql-предложение-select-12d169e7-0348-407d-9c67-180ff32540ac#bm4 Access SQL. Предложение SELECT ....... В качестве поля можно использовать любое допустимое выражение, если, принимая одно значение, оно возвращает также одно значение. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 18:37 |
|
Разная скорость выполнения запроса при похожем условии
|
|||
---|---|---|---|
#18+
__Michelle В качестве поля можно использовать любое допустимое выражение, если, принимая одно значение, оно возвращает также одно значение. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.12.2021, 21:40 |
|
|
start [/forum/topic.php?all=1&fid=45&tid=1609527]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
156ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
2ms |
others: | 270ms |
total: | 548ms |
0 / 0 |