sql获取一条数据中所有字段的名称和值的实现方法

2022-11-12 09:20:43
内容摘要
这篇文章主要为大家详细介绍了sql获取一条数据中所有字段的名称和值的实现方法,具有一定的参考价值,可以用来参考一下。 感兴趣sql获取一条数据中所有字段的名称和值的实现方
文章正文

这篇文章主要为大家详细介绍了sql获取一条数据中所有字段的名称和值的实现方法,具有一定的参考价值,可以用来参考一下。

感兴趣sql获取一条数据中所有字段的名称和值的实现方法的小伙伴,下面一起跟随512笔记的小编罗X来看看吧。
declare 
@sql nvarchar(300)

DECLARE @intMinId INT,@intMaxId INT,@intClubID INT,@lngUpdateAmount BIGINT,@filename varchar(50)
--获取表的列名
SELECT RowID=IDENTITY(INT,1,1),filename
INTO #templist 
FROM (select cl.name as filename from sys.tables AS tb,sys.columns cl where tb.object_id = cl.object_id and tb.name='book') AS A 

SELECT @intMinId =MIN(RowID),@intMaxId=MAX(RowID) 
FROM #templist
--这里必须设置sql为空字符串,不然设置没数据
set @sql=''
WHILE @intMinId<=@intMaxId
BEGIN
    SELECT @filename = filename
    FROM #templist WHERE RowID=@intMinId
    if(@intMinId=@intMaxId)
        begin
            set @sql = @sql + ' select ' + '''' + @filename + '''' + 'as FileName,' + @filename + ' as value from book where BID=' + '''B001''' 
        end
    else
        begin
            set @sql = @sql+' select '+''''+@filename + '''' + 'as FileName,' + @filename + ' as value from book where BID=' + '''B001''' + ' union all ';
        end
    SET @intMinId=@intMinId+1
END
---- 来自www.512pic.com 
print @sql
EXEC sp_executesql @sql
drop table #templist

注:关于sql获取一条数据中所有字段的名称和值的实现方法的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!