话说楼主刚开始也不知道怎么查,而后就开始百度了程序员
大部分网友都是建议一个一个写 固然程序员是最懒的啦,一个一个写多痛苦啊sql
接着找编程
还别说csdn里还有很多大牛的json
因而出现了这个脚本后端
declare
@s
nvarchar
(
1000
)
select
@s
=
isnull(
@s
+
'
,
',
'')
+
quotename(Name)
from syscolumns
where ID
=
object_id(
'
表名
')
and Name
not
in(
'
排除字段
')
order
by colid
exec(
'
select
'
+
@s
+
'
from 表名
')
执行以后 哇 完美 正是我想要的结果ide
而后博主闲着没事又往下翻了翻有另一个网友也给出了相似的方法代码以下:工具
获得表中除Col一、Col2的全部列
例如:userno_fm、userno_to
create
table test(
num
int
identity(
1,
1),
userno_fm
varchar(
10),
userno_to
varchar(
10),
username
varchar(
10))
select
*
from test
declare
@sql
varchar(
8000)
select
@sql
=
''
select
@sql
=
@sql
+
'
,
'
+
[
name
]
from
(
select
[
name
]
from syscolumns
where
object_id(N
'
[test]
')
=
[
id
]
and
[
name
]
not
in (
'
userno_fm
',
'
userno_to
')) A
set
@sql
=
'
select
'
+
stuff(
@sql,
1,
1,
'')
+
'
from [test]
'
--
print @sql
exec (
@sql)
drop
table test
执行一下 结果是相同的spa
也能够看出两个方法直接的差异.net
第一个堪称完美code
第二个有点笨拙由于
select @sql='' select @sql=@sql+','+[name] from 能够用@s=isnull(@s+',','')代替
'select '+stuff(@sql,1,1,'') 不如 quotename(Name)方便直接
不过第二个也正是博主的写做风格因此博主才有切身的感觉见到第一个代码如土鳖与到了女神
今天又一次感觉到了编程之美,代码之美 心中一阵清风吹过 爽
博主又有了新猜测,之后直接用sql查询出json格式的数据就不用在后端第三方工具将table转换了
文中代码引自: http://bbs.csdn.net/topics/330143955#quote