1
私は前に同じスキーマについて質問しました。今回はテーブルからの出力を取ることが条件です。スキーマのために、今私はマップテーブルから会社イドを照会し、カンマ区切り値としてカテゴリのすべてのサブカテゴリーを表示したいものをこのquestion表からコンマ区切り値を表示
を参照してください。シナリオはthtのようなものです。 私は会社ID1としてログインしていて、3つのカテゴリがあります。その後、私のグリッドでは、それが表示されます:
**Category** **Subcategory**
Category1 SubCat1, Subcat2, Subcat3 and so on
Category2 SubCat4, Subcat62, Subcat6 and so on
私の既存のクエリは、この次のとおりです。http://archive.msdn UDF
ALTER FUNCTION [dbo].[fnGetCSValues] (@Id INT)
RETURNS VARCHAR(8000)
AS
BEGIN
DECLARE @List VARCHAR(8000)
SELECT @List =(SELECT tbl_SubCategory.Name
FROM tbl_Company_Category_Map INNER JOIN
tbl_Category ON tbl_Company_Category_Map.CategoryId = tbl_Category.Id INNER JOIN
tbl_SubCategory ON tbl_Company_Category_Map.SubCategoryId = tbl_SubCategory.Id
WHERE tbl_Company_Category_Map.CompanyId = @Id
ORDER by tbl_SubCategory.Name
FOR XML PATH(''))
RETURN LEFT(@List,(LEN(@List) -1))
END
参照して
Microsoft.com/SQLExamples/Wiki/View.aspx?title = createacommadelimitedlist – Magnus
質問は何ですか? UDFは正しい結果を得られないのでしょうか? –
どちらも同じ行になっています... –