Запрос 1:Как улучшить производительность выполнения запросов SQL?
select a.*
from
(
select
row_number() over (order by id desc) as srno
id,name as myname,*
from table
where name like 'search%' or column1 like 'search%' or column2 like 'search%'
or column3 like 'search%'
or column4 like 'search%'
or column5 like 'search%'
) a
where srno>=1 and srno<=50
У меня есть 100 000 строк на моем столе. Выполнение этого запроса занимает 48 секунд. Я применил альтернативный запрос:
запрос 2:
select top 50
row_number() over (order by id desc) as srno
id,name as myname,*
from table
where name like 'search%' or column1 like 'search%' or column2 like 'search%'
or column3 like 'search%'
or column4 like 'search%'
or column5 like 'search%'
запрос 2 принимать приблизительную 0 секунд, чтобы выполнить там индексирует все готово Applied в обоих случаях
делает ли способ выполнить запрос 1 В течение 0 секунд?
I wany to real time Execution Speed.
Где ваши индексы? Какие СУБД вы используете? – Marc
Существуют ли индексы на 'name' и' column1' '' column5'? И я не имею в виду один комбинированный индекс для всех 6 столбцов, но один индекс для каждого из них? Также: Сколько времени занимает Query 2, когда вы удаляете 'top 50'? Потому что это то, что выполняется в Query 1. –