Bonjour,
Pour exécuter une requête SQL et ressortir son résultat sous le forme d'un seul résultat de requête j'ai besoin de développer une fonction scalaire SQL Server.
Hors, je n'y connais pas grand chose en TSQL.
La table sur laquelle je veux faire un Select contient les champs INTITULE, DESCRIPTION, INCIDENTID (foreign key, c'est le paramètre de ma fonction).
Voici le code que j'ai réussis à produire :
Le problème que je rencontre c'est que quand je fait mon SELECT sur ma fonction je ne récupère que les intitulés de ma table par contre je récupère bien mes multiples lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 USE BaseDev GO CREATE FUNCTION [dbo].[GetListeActionsByINCIDENTID] ( @_INCIDENTID Integer ) RETURNS varchar(800) AS BEGIN DEClARE @ligne varchar(800) DECLARE @liste varchar(800) DECLARE cur CURSOR FAST_FORWARD FOR SELECT INTITULE DESRIPTION FROM [BaseDev].[dbo].[ACTION] WHERE INCIDENTID = @_INCIDENTID OPEN cur set @liste = '' FETCH NEXT FROM cur INTO @ligne WHILE @@FETCH_STATUS=0 BEGIN SET @liste = @liste + ' ' + @ligne FETCH NEXT FROM cur INTO @ligne END CLOSE cur DEALLOCATE cur RETURN @liste END GO
Merci pour votre aide.
Partager