Welcome to Sign in | Help

Re: select care merge f greu cu parametru - sql server 2005

  •  05-07-2009, 6:57 AM

    Re: select care merge f greu cu parametru - sql server 2005

    Acuma nu stiu exact cum arata tabelele tale, dar daca ar fi sa ghicesc as zice ca e pentru ca declari parametrul ca varchar(8). Query-ul tau este echivalent cu:

    select ClientId, Dept, (-1)*sum(Soldl) as Sold 
    from table where cast(Bdata as varchar(8)) = @data
    and left(AccSint,4) in ('2021','2031','2042','2052','2061','2091','2312','2811','2821') 
    group by ClientId, Dept

    si va genera un plan care scaneaza tabela si converteste fiecare BData. Priml plan folosete un seek, al doilea un scan, de unde diferenta. Pentru a fixa problema declare @data ca datetime.

    http://rusanu.com
View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems