Dans une 'fonction define par l'utilisateur', est il possible de parcourir
une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema:
J'ai une table de seances: seances(noseance, date, heure) et une table des
films projetes: filmprojetes(noseance, titre).
Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne
dans une variable tous les titres des films projetes d'une seance. Du genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric)
returns char(300)
as
begin
declare @titresfilm char(300), @tnoseance numeric(5,0)
select noseance,titre from filmprojetes where noseance=@tnoseance
* *ensuite je souhaite parcourir la table
** et concatener dans le champs @titresfilm
set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre)
** prochain enregistrement
return @titrefilm
end
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Michel
Merci quand meme, j'ai trouve: ordre while et fetch
"Michel" a écrit dans le message de news:emjfu7%
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema: J'ai une table de seances: seances(noseance, date, heure) et une table des films projetes: filmprojetes(noseance, titre). Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne dans une variable tous les titres des films projetes d'une seance. Du
genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric) returns char(300) as begin declare @titresfilm char(300), @tnoseance numeric(5,0) select noseance,titre from filmprojetes where noseance=@tnoseance * *ensuite je souhaite parcourir la table ** et concatener dans le champs @titresfilm set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre) ** prochain enregistrement return @titrefilm end
Merci d'avance pour toute aide
Michel
Merci quand meme, j'ai trouve: ordre while et fetch
"Michel" <mdrot@yahoo.fr> a écrit dans le message de
news:emjfu7%23vDHA.2308@TK2MSFTNGP11.phx.gbl...
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir
une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema:
J'ai une table de seances: seances(noseance, date, heure) et une table des
films projetes: filmprojetes(noseance, titre).
Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne
dans une variable tous les titres des films projetes d'une seance. Du
genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric)
returns char(300)
as
begin
declare @titresfilm char(300), @tnoseance numeric(5,0)
select noseance,titre from filmprojetes where noseance=@tnoseance
* *ensuite je souhaite parcourir la table
** et concatener dans le champs @titresfilm
set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre)
** prochain enregistrement
return @titrefilm
end
Merci quand meme, j'ai trouve: ordre while et fetch
"Michel" a écrit dans le message de news:emjfu7%
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema: J'ai une table de seances: seances(noseance, date, heure) et une table des films projetes: filmprojetes(noseance, titre). Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne dans une variable tous les titres des films projetes d'une seance. Du
genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric) returns char(300) as begin declare @titresfilm char(300), @tnoseance numeric(5,0) select noseance,titre from filmprojetes where noseance=@tnoseance * *ensuite je souhaite parcourir la table ** et concatener dans le champs @titresfilm set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre) ** prochain enregistrement return @titrefilm end
Merci d'avance pour toute aide
Michel
Fred BROUARD
plus rapide :
DECLARE @List varchar(8000) SET @List = ''
SELECT @List = @List + COALESCE(RTRIM(COLUMN_NAME) +', ', '') FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'COLUMNS' ORDER BY COLUMN_NAME
SELECT @List
Inspire toi de cela
A +
Michel a écrit:
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema: J'ai une table de seances: seances(noseance, date, heure) et une table des films projetes: filmprojetes(noseance, titre). Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne dans une variable tous les titres des films projetes d'une seance. Du genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric) returns char(300) as begin declare @titresfilm char(300), @tnoseance numeric(5,0) select noseance,titre from filmprojetes where noseance=@tnoseance * *ensuite je souhaite parcourir la table ** et concatener dans le champs @titresfilm set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre) ** prochain enregistrement return @titrefilm end
Merci d'avance pour toute aide
Michel
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
plus rapide :
DECLARE @List varchar(8000)
SET @List = ''
SELECT @List = @List + COALESCE(RTRIM(COLUMN_NAME) +', ', '')
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'COLUMNS'
ORDER BY COLUMN_NAME
SELECT @List
Inspire toi de cela
A +
Michel a écrit:
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir
une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema:
J'ai une table de seances: seances(noseance, date, heure) et une table des
films projetes: filmprojetes(noseance, titre).
Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne
dans une variable tous les titres des films projetes d'une seance. Du genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric)
returns char(300)
as
begin
declare @titresfilm char(300), @tnoseance numeric(5,0)
select noseance,titre from filmprojetes where noseance=@tnoseance
* *ensuite je souhaite parcourir la table
** et concatener dans le champs @titresfilm
set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre)
** prochain enregistrement
return @titrefilm
end
Merci d'avance pour toute aide
Michel
--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto:brouardf@club-internet.fr ******************
SELECT @List = @List + COALESCE(RTRIM(COLUMN_NAME) +', ', '') FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'COLUMNS' ORDER BY COLUMN_NAME
SELECT @List
Inspire toi de cela
A +
Michel a écrit:
Bonjour a tous,
Dans une 'fonction define par l'utilisateur', est il possible de parcourir une table ligne a ligne pour effectuer un traitement sur chacune d'elle?
Je m'explique avec une question cinema: J'ai une table de seances: seances(noseance, date, heure) et une table des films projetes: filmprojetes(noseance, titre). Pour une seance, il peut y avoir plusieurs films projetes (max 3) (1 a N)
Je souhaiterai creer une 'fonction definie par l'utilisateur' qui retourne dans une variable tous les titres des films projetes d'une seance. Du genre:
CREATE function dbo.fn_titresprojetes (@tnoseance numeric) returns char(300) as begin declare @titresfilm char(300), @tnoseance numeric(5,0) select noseance,titre from filmprojetes where noseance=@tnoseance * *ensuite je souhaite parcourir la table ** et concatener dans le champs @titresfilm set @titrefilm =@titrefilm + RTRIM(filmprojetes.titre) ** prochain enregistrement return @titrefilm end
Merci d'avance pour toute aide
Michel
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************