fakhravari
پنج شنبه 09 مرداد 1393, 21:55 عصر
جداول تگ بلاگفا.
به این صورت کار میشه؟؟
http://fakhravary.blogfa.com/tag/%DA%A9%D8%A7%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA
مثلا هر مطلب یک فیلد تگ داره که > مثال مطلب چند خطی در مولتی لاین
Tag :
asp
Multi
چند خطی
که اینا در یک رشته با + از هم جدا میشن.
بعد با یک Query میتوان تعداد هر یک را بدست بیاری!
دوستان کمکی کنند در مورد پیاده سازیش
fakhravari
جمعه 10 مرداد 1393, 13:25 عصر
نتیجه کار خودم
ALTER PROC GetTag(@TableName nvarchar(20)=N'Table1',@ID nvarchar(50)=N'ID',@Text nvarchar(50)=N'Text')as
Declare @Tb1 Table (ID int , [Text] NVARCHAR(100));INSERT INTO @Tb1 EXEC ('SELECT '+@ID+','+@Text+' FROM '+@TableName);
Declare @Tb2 Table (ID int , [Text] NVARCHAR(100))
DECLARE @ID2 NVARCHAR(MAX),@Text2 NVARCHAR(MAX)
DECLARE Table_Cursor CURSOR
FOR
SELECT [ID],[Text] FROM @Tb1
OPEN Table_Cursor FETCH NEXT FROM Table_Cursor INTO @ID2,@Text2
WHILE (@@FETCH_STATUS = 0)
BEGIN
INSERT INTO @Tb2 SELECT * FROM dbo.SplitString(@Text2,'+',@ID2)
FETCH NEXT FROM Table_Cursor INTO @ID2,@Text2
END CLOSE Table_Cursor DEALLOCATE Table_Cursor
--SELECT [ID],[Text] FROM @Tb2
Declare @Tb3 Table ([Text] NVARCHAR(100)); INSERT INTO @Tb3 SELECT DISTINCT [Text] FROM @Tb2;
Declare @Tb4 Table ([Text] NVARCHAR(100))
INSERT INTO @Tb4 SELECT [Text]+' ('+CAST((SELECT COUNT(*) FROM @Tb2 WHERE [Text] like '%'+[@Tb3].Text+ '%')AS NVARCHAR)+')' FROM @Tb3
SELECT [Text] FROM @Tb4
--EXEC GetTag
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.