Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 ускорить запрос  [new]
Alex5555555555
Member

Откуда:
Сообщений: 114
Есть запрос из вьюхи, время выполнения бизнес критично
отрабатывал раньше меньше 10сек, но БД пухнет...
через тюнинг пробовал, получил 4е совета, применил, но не помогло
какие вообще способы есть ускорения запросов?

вся инфа должна тянуться
автор
select top 51 vt_asset0.VT_IMCardNo as 'vt_imcardno',
vt_asset0.VT_SISDNStatus as 'vt_sisdnstatus', vt_asset0.VT_name as 'vt_name',
vt_asset0.VT_DateofActivation as 'vt_dateofactivation', vt_asset0.VT_ContractStatusReason as 'vt_contractstatusreason',

vt_asset0.VT_ContractStatus as 'vt_contractstatus', vt_asset0.vt_contactid as 'vt_contactid',
vt_asset0.VT_Tariff as 'vt_tariff', vt_asset0.VT_assetId as 'vt_assetid', vt_asset0.vt_contactidDsc as 'vt_contactiddsc',

vt_asset0.vt_contactidName as 'vt_contactidname',
vt_asset0.vt_contactidYomiName as 'vt_contactidyominame' from VT_asset as vt_asset0
where ((vt_asset0.DeletionStateCode in (0)) and (vt_asset0.statecode = 0)
and (vt_asset0.VT_ariff like '22222222222%' or vt_asset0.VT_IMCardNo like '22222222222%'
or vt_asset0.VT_name like '222222222222%' or vt_asset0.VT_marketingid like '2222222222%'
or vt_asset0.VT_MSINo like '2222222222%' or vt_asset0.VT_contractcode like '375259090573%'
or vt_asset0.vt_contactidName like '22222222222%' or vt_asset0.VT_Salespoint like '222222222%'))
order by vt_asset0.VT_IMCardNo asc,
vt_asset0.VT_assetId asc


blog
22 июн 12, 14:48    [12760613]     Ответить | Цитировать Сообщить модератору
 Re: ускорить запрос  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
Alex5555555555, or перепишите на union all.Индексы по полям,которые в like используются постройте.
22 июн 12, 14:56    [12760677]     Ответить | Цитировать Сообщить модератору
 Re: ускорить запрос  [new]
Alex5555555555
Member

Откуда:
Сообщений: 114
denis2710,

индексы по полям!
и я так же думал
но
автор
TITLE: Microsoft SQL Server Management Studio
------------------------------

Create failed for Index 'ss'. (Microsoft.SqlServer.Smo)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2500.0+((KJ_PCU_Main).110617-0038+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Create+Index&LinkId=20476

------------------------------
ADDITIONAL INFORMATION:

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

------------------------------

Cannot create index on view 'VT_asset' because the view is not schema bound. (Microsoft SQL Server, Error: 1939)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2500&EvtSrc=MSSQLServer&EvtID=1939&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------



требуется пересоздать вьюху с схемой?
22 июн 12, 15:17    [12760854]     Ответить | Цитировать Сообщить модератору
 Re: ускорить запрос  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Индексы не только на view можно делать.
22 июн 12, 15:18    [12760869]     Ответить | Цитировать Сообщить модератору
 Re: ускорить запрос  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
denis2710
Alex5555555555, or перепишите на union all.Индексы по полям,которые в like используются постройте.
Вы прежде чем блистать познаниями приглядитесь в SQL-запрос автора и задумайтесь над его схемой данных и его знакомстве с materialized views.
а также подумайте, стоит ли вообще выправлять кривую схему материализованными вьюхами...
22 июн 12, 21:02    [12762858]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить