Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


använda UDF inparameter med från join

Postades av 2006-03-31 14:13:45 - Markus Wallén, i forum sql-server/msde, Tråden har 9 Kommentarer och lästs av 847 personer

Hej,
Jag skulle vilja använda en UDF i en select sats och skicka in ett id från en join i den.

ungefär såhär:

select * from table t
inner join dbo.fn_udf(t.id)

Är det möjligt att göra på det viset?
Jag får fel i scriptet, men det är kanske för att jag skriver tokigt.

Tack på förhand


Svara

Sv: använda UDF inparameter med från join

Postades av 2006-03-31 23:38:02 - Håkan Borneland

HeJ!

Kan du utveckla lite mer vad det är du vill åstakomma.

//Håkan


Svara

Sv:använda UDF inparameter med från join

Postades av 2006-04-01 21:56:50 - Mikael Wedham

OUTER APPLY eller CROSS APPLY borde vara det du vill ha, men de finns bara i SQL 2005

/micke


Svara

Sv:använda UDF inparameter med från join

Postades av 2006-04-12 09:56:16 - Markus Wallén

Hmmm...det är lite knepigt att förklara. :)

Säg att jag har en UDF som returnerar en tabell utifrån ett id.

select * from dbo.function(id)

Detta fungerar alldeles utmärkt.

Men om jag nu vill använda ett id från en annan tabell.

select * from person p
inner join dbo.function(p.id)

Så verkar det inte fungera. Går det inte att göra så eller gör jag fel?


Svara

Sv: använda UDF inparameter med från join

Postades av 2006-04-12 12:53:33 - Kalle Dahlberg

I SQL 2000 går det ej att göra så. Detta pga att du får flera inparametrar, och det funkar inte med en table-valued-function.


Svara

Sv: använda UDF inparameter med från join

Postades av 2006-04-12 13:55:48 - Andreas Hillqvist

Varför använder du en funktion? Hur ser koden för den ut?


Svara

Sv:använda UDF inparameter med från join

Postades av 2006-04-14 08:45:50 - Mikael Wedham

Jag formulerar om mig efter nya postningarnas innehåll...

OUTER APPLY eller CROSS APPLY ÄR det du vill ha, men de finns bara i SQL 2005

/micke


Svara

Sv: använda UDF inparameter med från join

Postades av 2006-05-08 23:33:54 - Mattias Lind

Här får du två svar:

Är det SQL Server 2005 kan du använda CROSS APPLY eller OUTER APPLY som redan sagt.

Eller så kör du en subquery, funkar i både 2000 och 2005.

SELECT * FROM TABELLEN T WHERE EXISTS (SELECT * FROM FUNKTIONEN(t.id) F)

Dock kommer funktionen exekveras per rad i tabellen

Lite trött nu med det var ett förslag i alla fall

Vill du använda tabellen som input på funktionen gör du först en CURSOR och stegar igenom den och triggar sedan funktionen. Om du gör ett join op det sättet mot en funktion och vill ha in line addressering från den utanförliggande kommer datat från JOIN tabellen förändras (rent teoretiskt) och då skulle resultatet från kopplingen bli inkonsekvent.

-mattelatte

PS: CURSOR på serversidan är hårdrock och riktigt COOL tycker jag... *ler


Svara

Sv:använda UDF inparameter med från join

Postades av 2006-05-09 09:45:31 - Mikael Wedham

<PS: CURSOR på serversidan är hårdrock och riktigt COOL tycker jag... *ler

Skall man se till prestanda (som man bör göra ibland...) SÅ SUUUUGER CURSORS

/micke


Svara

Sv: använda UDF inparameter med från join

Postades av 2006-05-09 10:10:30 - Mattias Lind

Ja visst, men ibland är de riktigt användbara och kul att använda...
och prestanda har vi ofta i överflöd... Och tänker man till innan kan även cursor vara effektivt...
T ex så kan man bygga en temporär tabell som man binder cursorn till, slarvar man med optimering av tempdb får man dock skylla sig själv...

*ler


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 619
27 953
271 709
5 745
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies