sqlserver查询列,sqlserver查询列数

SqlServer如何查询表的列数

select count(name) from syscolumns

创新互联公司主营鱼峰网站建设的网络公司,主营网站建设方案,重庆APP软件开发,鱼峰h5微信小程序开发搭建,鱼峰网站营销推广欢迎鱼峰等地区企业咨询

where id=( select id from sysobjects where name='表名' and xtype='U')

说明:select id from sysobjects where name='表名' and xtype='U' 从sysobjects 里查询表类型为U(非系统)的表的id ,假设查到的是 1002 ;

select count(name) from syscolumns where id=1002 查的是系统列syscolumns 里表id是1002的列数。

你可以随便建个表,然后分步运行这两句看看

sqlserver 查询结果列组成字符串

Select L.lastid,f.firstid,(Select 姓名+':'+电话+',' from [last] where firstid=f.firstid For XML Path(''))

from [first] F left join [last] L

on F.firstid=L.firstid Group by L.lastid,f.firstid

如何在sqlserver中获取表的所有列信息

1.查询数据库中的所有数据库名:

SELECT Name FROM Master..SysDatabases ORDER BY Name

2.查询某个数据库中所有的表名:

SELECT Name FROM SysObjects Where XType='U' ORDER BY Name

3.查询表结构信息:

SELECT (case when a.colorder=1 then d.name else null end) 表名,

a.colorder 字段序号,a.name 字段名,

(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) 标识,

(case when (SELECT count(*) FROM sysobjects

WHERE (name in (SELECT name FROM sysindexes

WHERE (id = a.id) AND (indid in

(SELECT indid FROM sysindexkeys

WHERE (id = a.id) AND (colid in

(SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name)))))))

AND (xtype = 'PK'))0 then '√' else '' end) 主键,b.name 类型,a.length 占用字节数,

COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,

isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,(case when a.isnullable=1 then '√'else '' end) 允许空,

isnull(e.text,'') 默认值,isnull(g.[value], ' ') AS [说明]

FROM syscolumns a

left join systypes b on a.xtype=b.xusertype

inner join sysobjects d on a.id=d.id and d.xtype='U' and d.name'dtproperties'

left join syscomments e on a.cdefault=e.id

left join sys.extended_properties g on a.id=g.major_id AND a.colid=g.minor_id

left join sys.extended_properties f on d.id=f.class and f.minor_id=0

where b.name is not null

--WHERE d.name='要查询的表' --如果只查询指定表,加上此条件

order by a.id,a.colorder

SQLSERVER 怎么查询某一数值在哪一列 和 哪几列

就拿你这个来说

select a+b+c from table

得到几就是几了呗,如果是其他字符,比如

select case when a='x' then 1 else 0 end +case when b='x' then 1 else 0 end +case when c='x' then 1 else 0 end from table

sqlserver 如何根据条件选择要检索的列 case when

SELECT id,

CASE WHEN id=1 THEN firstname ELSE user END 'username'

FROM tb1

如果是查询条件要用这个就套一个

SELECT *

FROM tb1 a

WHERE username=(SELECT CASE WHEN id=1 THEN firstname ELSE user END

FROM tb1

WHERE id=a.id);


分享文章:sqlserver查询列,sqlserver查询列数
分享路径:http://ybzwz.com/article/dssjpso.html