请帮助我优化下面的查询:
select s.ZahialgaID, sum(s.Quantity) total_qty, MAX(s.date_moved) MaxDate
from
tCardMoveForTailan s
where
(
s.date_moved is null or
s.date_moved <= @date_end or
convert(varchar(20), s.date_moved, 111) = convert(varchar(20), @date_end, 111)
) and
(
s.TsehID = GoyoMSDB.dbo.GetTsehByCode('nyrav') or
s.TsehID = GoyoMSDB.dbo.GetTsehByCode('rejected') or
s.TsehID = GoyoMSDB.dbo.GetTsehByCode('orooson') or
s.TsehID = GoyoMSDB.dbo.GetTsehByCode('zereg')
)
group by s.ZahialgaID;
将此数据用于您的查询: http://orion.mn/updateapp/data_to_play.rar
现在此查询在200000行上运行10秒。 但我想这样一个简单的查询可能需要1或2秒。请帮我完成这项任务!
表tCardMoveForTailan有一个聚簇索引如下:
create clustered index IX_tCardMoveForTailan_2 on tCardMoveForTailan (ZahialgaID, TsehID, date_moved);
任何建议都将不胜感激!
根据评论的要求,dbo.GetTsehByCode()函数的主体:
CREATE FUNCTION GetTsehByCode (@code nvarchar(50))
RETURNS int AS
BEGIN
declare @tsehid int
select @tsehid = TsehID from tTseh where code=@code
RETURN @tsehid
END
表tTseh只有10行。
答案 0 :(得分:0)
也许这会有所帮助:
$('.ui.rating').rating('setting', 'onRate', function(value) {
var url = '/update/item/' + $(this).data('id') + '/value/' + value;
$('#href').text(url);
});