① 在一个sql数据库中怎么查出包含某个特定字段的所有数据表信息
1.查询数据库中的所有数据库名:
SELECT Name FROM Master..SysDatabases ORDER BY Name
2.查询某个数据库中所有的表名:
SELECT Name FROM SysObjects Where XType='U' ORDER BY Name
3.查询表结构信息:
1 SELECT (case when a.colorder=1 then d.name else null end) 表名,
2 a.colorder 字段序号,a.name 字段名,
3 (case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) 标识,
4 (case when (SELECT count(*) FROM sysobjects
5 WHERE (name in (SELECT name FROM sysindexes
6 WHERE (id = a.id) AND (indid in
7 (SELECT indid FROM sysindexkeys
8 WHERE (id = a.id) AND (colid in
9 (SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name)))))))
10 AND (xtype = 'PK'))>0 then '√' else '' end) 主键,b.name 类型,a.length 占用字节数,
11 COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,
12 isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,(case when a.isnullable=1 then '√'else '' end) 允许空,
13 isnull(e.text,'') 默认值,isnull(g.[value], ' ') AS [说明]
14 FROM syscolumns a
15 left join systypes b on a.xtype=b.xusertype
16 inner join sysobjects d on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'
17 left join syscomments e on a.cdefault=e.id
18 left join sys.extended_properties g on a.id=g.major_id AND a.colid=g.minor_id
19 left join sys.extended_properties f on d.id=f.class and f.minor_id=0
20 where b.name is not null
21 --WHERE d.name='要查询的表' --如果只查询指定表,加上此条件
22 order by a.id,a.colorder
② SQL server 查询数据库中所有包含某值的表
use test
go
select a.Name as tableName from sysobjects a inner join syscolumns b on a.ID=b.ID
where b.Name='列名'
③ SQL Server 已知字段名和对应的一个值,如何查到这个表名
假设你的字段名和值是数据库里面唯一的。
由于你没给字段名和值我列举了一个吧
字段名和值分别为column_name=1
select table_schema,table_name from information_schema.columns where column_name = '1'
用这条语句就能查询出来,其中 table_schema 是所在库, table_name 是所在表
如果你这个字段名和值不是数据库里面唯一的,而且好几个表里面都有的,好像查不出来。
或者能查出来,可惜鄙人才疏学浅,并不掌握!
寥寥几语希望能给你启发和帮助!有错误的地方还请指正!
④ 用SQL怎样查询到包含有某个字段的所有表名
select a.name 表名,b.name 列名 from sysobjects a,syscolumns b where a.id = b.id and b.name = '表名'and a.type='U'
还有一种:
SELECT b.name as TableName,a.name as columnname
From syscolumns a INNER JOIN sysobjects b
ON a.id=b.id
AND b.type=’U’
AND a.name=’你的字段名字’
⑤ SQL如何查找含有该数据的所有表
select*from[table1][table2][table3]
where[列名]=123456
想学数据库的话可以找教程一步一步跟着学哈。
⑥ 求一个SQL语句,在一个库中搜索一个值返回有这个值的表名
你说第一个没效果,那肯定啦,你要把表名改成你自己所需的。其次,你说第二个会报错,test数据库、TB_Test表你都没有你能运行?最后:其实你自己需求都不太清楚,我就说怎么会有你所说的这种要求。。而且你最后所说的“搜索有这个数值的表,而不是在一个数据库中搜索一个表名”这并不是SQL差不差的问题,我想说的是,你对需求还没说清楚!可能是我理解能力有问题了?-0-#在一个库中搜索一个值返回有这个值的表名这个不清楚吗?不好意思,那我在详细点说,“我要返回一个数据库中拥有指定数值的表名和列名”。或者说“我想在一个数据库中的所有表的所有列中搜索一个值,返回匹配这个值的表名列明”这个你看还清楚吗?
⑦ SQL数据库,如何查询数据库内含有某一列(某字段,如name)的所有表
SQL数据库,查询包含列(字段,如名称)的数据库中的所有表的步骤如下:需要准备的材料是:计算机,sql finder。
1,首先,打开sql查询器并连接到相应的数据连接,例如测试库。
⑧ sql 查所有表中是否有某个值
select
*
from
表名
where
字段=值
*
表示该表中所有的字段,如果不想要所有的字段,可以将要显示的字段代替
*
,多个字段可以用逗号分隔;
表名
表示要查询表的表名称
字段
就是
你想要查询该表中字段的名称
例如:select
id,name
,age
from
student(表名)
where
age>16
⑨ 如何在SQL中查找数值所在表
哥们儿,数据库不会这么用的,虽然能做到
如:
1、声明游标
//关键,查询表名,通过游标可以控制表名逐行筛选
select name from sysobjects
where type='U'
2、开始游标,得到表名@tablename
3、循环拼接sql语句并判断
@sql = 'select * from ' + @tablename + ' where 1 = 1'
select @sql += ' or name = ' + 你的值 from syscolumns where id = object_id(@tablename)
exec(@sql) --得到的结果,最后你需要怎么处理就怎么处理,这里返回的是表
以上只是思路,我是没这么用过,你自己看着办