locked
szamitott mezore index RRS feed

  • Question

  • hali

     

    create function GetIsCorporate( @Giro numeric(24,0)) returns int

    as

    begin

    return case when substring(CONVERT(varchar(24),@Giro,0),1,8)='10800021'

    OR substring(CONVERT(varchar(24),@Giro,0),1,8)='10800007'

    then 1 else 0 end

    end

     

    (van ennel bonyisabb is, ez most egy egszeru Smile )

    ha egy szamitott mezot hozok letre, amibe beiroma fenti kifejezest (amit a fgv megvalosit) akkor arra tudok indexet rakni.

    ha a fenti fgv-t rakom be, akkor nem tudok ra indexet csinalni.

    meg elhet valahogy gyozni arrol az sql2005-ot, hogy akkor is engedjen ra indexet csinalni, ha afgv-t hasznalom?

     

    aztan van egy bug is a SSMSben (sp2-es)

    egy ennel kicsit bonyisabb kifejezes (ami scripttel lett hozzaadva mint szamitott mezo) szerinte hibas igy a Design pontban nem tudom modositani a tablat, mert szerinte rossz az a szamitott mezo kifejezes (ami amugy lefut es szamol, es index is van rajta es scriptbol siman hozzaadja stb..)

     

    Wednesday, May 2, 2007 8:56 AM

Answers

  • Szia,

     

    próbáld így:

    create function GetIsCorporate( @Giro numeric(24,0)) returns int

    WITH SCHEMABINDING

     

    Safi
    Wednesday, May 2, 2007 10:15 AM
    Moderator