求给力!!SQL获取字段名!!高手请赐教!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求给力!!SQL获取字段名!!高手请赐教!相关的知识,希望对你有一定的参考价值。

已知一个表如下:
ID 姓名 性别 年级 语文 数学 英语。。。。。。。。
1 张三 男 高一 80 90 90 。。。。。。。

通过查询得到
语文 数学 英语。。。。。。。。。。
80 90 90 。。。。。。。。。。

就是如何获取字段名和字段的值~而后从第N个字段后开始显示结果!!

CREATE TABLE TestABC (
[ID] INT,
[姓名] VARCHAR(10),
[性别] CHAR(2),
[年级] CHAR(4),
[语文] INT,
[数学] INT,
[英语] INT,
[物理] INT,
[化学] INT
);

INSERT INTO TestABC
VALUES(1, \'张三\', \'男\', \'高一\', 80, 90, 90, 95, 90);

-- 这个SQL,是除了 \'ID\', \'姓名\', \'性别\', \'年级\' 这4列以外,其他都检索。
DECLARE @sql VARCHAR(200);
BEGIN
SET @sql =
\'SELECT \' + STUFF(
(SELECT
\',\' + col.name
FROM
sys.columns col
WHERE
col.object_id =
(SELECT object_id FROM sys.tables WHERE name = \'TestAbc\')
AND col.name NOT IN (\'ID\', \'姓名\', \'性别\', \'年级\')
FOR XML PATH(\'\')), 1 , 1, \'\') + \' FROM TestAbc\';
EXECUTE (@sql);
END

-- 这个SQL,是排除前面4列,从第5列开始全部检索。
DECLARE @sql VARCHAR(200);
BEGIN
SET @sql =
\'SELECT \' + STUFF(
(SELECT
\',\' + col.name
FROM
sys.columns col
WHERE
col.object_id =
(SELECT object_id FROM sys.tables WHERE name = \'TestAbc\')
AND col.column_id > 4
FOR XML PATH(\'\')), 1 , 1, \'\') + \' FROM TestAbc\';
EXECUTE (@sql);
END

2个SQL 的结果是一样的:

语文 数学 英语 物理 化学
----------- ----------- ----------- ----------- -----------
80 90 90 95 90

(1 行受影响)

参考资料:http://hi.baidu.com/wangzhiqing999/blog/item/394c5ff831981b96b801a077.html

参考技术A 大致思路
通过系统表sys.tables 动态拼接SQL 然后执行
参考技术B ,我的小号是80的10次下来都400,杀怪用力破,现在暴力押镖还是很吃香滴。

我的vs2008英文版不能调试JS了,请高手赐教,实现调试JS的过程,英文版。。。如何设置?

断点调试后 有感叹号提示 中文意思是“当前不会命中断点,未加载文档”

调试JS用 firefox 的 Firebug 多好~
IE8也有js 调试器
参考技术A 1、首先要保证页面已经加载了这个文档,
2、如果是引用的脚本文件到页面的话,直接加断点不行的话,就在想调试的代码前加一句debugger

以上是关于求给力!!SQL获取字段名!!高手请赐教!的主要内容,如果未能解决你的问题,请参考以下文章

PLSQL中怎样获取未知结构的动态游标的字段名

sql语句怎么查询表的字段属性名

如何用sql将两张表的字段名和列值进行匹配?

sqlserver中将一个含有“=”的字段拆分成两个字段显示出来,请数据库高手指点

获取一个数据表所有字段名的SQL怎么写

用SQL语句查询出数据表中的字段名以及注释(Oracle)