Une catégorie peut avoir plusieurs produits. Je dois construire StoredProcedure qui renvoie toutes les catégories avec des données de produits combinés en un seul champ:Combiner les champs des tables jointes
SP Result: idCategory Name ProductNames ProductQuantities 1 Cat1 Procut1,Product2 24,32 2 Cat2 ProductX,ProductY 0,61
ProductNames et ProductQuantities sont des champs VARCHAR combinés (concaténer) les valeurs des champs de tables jointes de produits. Voilà ce que j'ai dans DB:
Category table: idCategory Name 1 Cat1 2 Cat2 Product table: idProduct idCategory Name Quantity 1 1 Product1 24 2 1 Product2 32 3 2 ProductX 0 4 2 ProductY 61
Je voudrais aussi avoir une fonction, qui retourne "Product1, Product2" pour le paramètre d'entrée idCategory = 1, comme ceci:
SELECT idCategory, dbo.NamesFn(idCategory) AS ProductNames, dbo.QuantitiesFn(idCategory) AS ProductQuantities FROM Category
peut-être une fonction cela renvoie le résultat de la table, donc rejoindre ne serait fait qu'une seule fois, pas dans chaque Fn (parce que c'est un exemple simplifié, dans l'application réelle, je dois avoir 4-5 champs combinés, ou même plus dans le futur)?
Comment écrire cela SQL/SP & Fn? J'utilise MS SQL2005
je l'ai déjà trouvé ces exemples par Google, mais ne le font pas savoir avoir à construire Fonction qui retourne le résultat de la table, et comment inclure ces résultats aux résultats SP –
Un des liens inclut le code pour une telle fonction ... –
@Tom H mais pas pour la fonction avec le résultat du tableau –