HDSoftware Skrevet 31. mars 2008 Skrevet 31. mars 2008 Heisan Jeg har noe slikt: Select * from v_Contacts where MSP_FiltrerType(v_Contacts.RecordTYPE) = 1 Jeg er ingen SQL programmerer, men all annen form for programmering gir slike logiske muligheter. Noen som kan fortell emeg hva jeg gjør feil? Ser også at jeg kan skrive et kall til SP'er slik: SP_SomeProc Parm1, Parm2 men uansett hvordan jeg putter dette inn så blir det feil Ole
___ Skrevet 31. mars 2008 Skrevet 31. mars 2008 Så lenge du ikke sier noe om hvilket RDBMS du benytter er det vel ingen som vil bruke tid på å gi deg noe svar. Werner
HDSoftware Skrevet 31. mars 2008 Forfatter Skrevet 31. mars 2008 Trodde dette var standard greier i SQL, men det er vel ikek det da MSSQL2005 er greia
___ Skrevet 31. mars 2008 Skrevet 31. mars 2008 Nå er jeg Oracle-mann og har aldri satt min fot i MSSQL, men jeg googlet litt, og kom fram til dette: http://www.sqlteam.com/article/user-defined-functions Hilsen Werner
HDSoftware Skrevet 31. mars 2008 Forfatter Skrevet 31. mars 2008 Excellent! Ser at de bruker Create Function. Kan det være så enkelt da atte det er det som er problemet. Tester i allefall... Ole
HDSoftware Skrevet 31. mars 2008 Forfatter Skrevet 31. mars 2008 Og det var det faktisk. Man kan ikek bruke Stored Procedure inne i et select statement, men en User Function derimot.... helt greit. jaja Ole
kaffenils Skrevet 1. april 2008 Skrevet 1. april 2008 Men vær litt forsiktig med å bruke UDF i spørringer da de kan påvirker ytelsen negative, spesielt hvis en spørring som i utgangspunktet er set-basert blir record-basert. Dessuten ender du som ofte opp med index scans istedet for index seeks. Med det mener jeg at SQL Server kan risikere å eksekvere UDFen en gang pr. rad og det kan få konsekvenser for ytelsen. Merk at jeg sier kan, ikke vil fordi spørremotoren i SQL Server kan flette innholdet i UDFen inn i spørringen som den brukes i hvis det er snakk om en "Inline Table-valued Function". Nå vet ikke jeg hva MSP_FiltrerType gjør, men basert på navnet gjetter jeg at hver kontakt har en type som er definert som en foreign key til en annen tabell som igjen har en kategori som du er ute etter å filtrere på. Hvis dette stemmer så vil det være mye bedre å gjøre det om til et sety-basert spørring ved å joine kategoritabellen som brukes i UDFen.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå