2009-04-03 5 views
1

J'ai une fonction table évaluée qui fait une requête complexe et retourne une table (UDF1), puis j'ai une autre table qui a un tas de lignes qui peuvent être utilisées pour réduire la sortie de cette UDF.Inbound jonction UDF sur SQL Server

Est-il possible de joindre ces deux et passer des colonnes de la table en tant qu'arguments à l'UDF?

comme,

SELECT * 
FROM UDF1 (TBL1.Column1, TBL1.Column2) 
INNER JOIN TBL1 
      ON (TBL1.Column3 = UDF1.Col3) 
+0

-2. Peut-être besoin d'utiliser un alias sur l'UDF. –

+0

juste pour clarifier, j'ai essayé et je sais que l'erreur j'obtiendrai, j'essaye juste de communiquer l'intention, pour voir si quelqu'un sait une autre manière d'accomplir ceci ... –

+0

alors s'il vous plaît montrer l'erreur que vous "allez" obtenir! –

Répondre

3

Vous devez utiliser la syntaxe CROSS APPLY ici.

Pour des performances raisonnables, l'UDF doit être un en ligne plutôt qu'un multistatement un si possible.

Questions connexes