当前位置:Gxlcms > 数据库问题 > 根据目标列的内容使用sql获取列名

根据目标列的内容使用sql获取列名

时间:2021-07-01 10:21:17 帮助过:4人阅读

    最近需要将房源数据以xml格式提供给百度,然而对于所需数据的某些项在数据库中是那一列还不清楚。数据库中的列很多,并且不是每一条数据在相应列上都有数据。为了能够快速的找到相应的列,我特意写了一条sql来查询相应的列。展示如下:

declare @tableName varchar(30),@columnStr varchar(200)
declare @column varchar(30),
@str varchar(300)
--要查询的表名
set @tableName=‘article‘
--要查询的内容
set @columnStr=‘花‘
declare  cur cursor for
Select name from syscolumns Where ID=OBJECT_ID(@tableName) 
 open cur 
 fetch next from cur into @column
 while (@@FETCH_STATUS=0)
   begin
     set @str=‘declare @count int
	 set @count=( select top(1) 1 from ‘+@tableName+‘ with(nolock) where ‘+@column +‘ like ‘‘%‘+@columnStr+‘%‘‘ )
	 if @count=1
	 begin
	   print ‘‘‘+@column+char(13) +‘‘‘ 
	 end‘
	  fetch next from cur into @column
	EXEC(@str);
   end
   close cur
   deallocate cur

      期望这段代码能够对有相同需求的人有所帮助。

根据目标列的内容使用sql获取列名

标签:

人气教程排行