① 在一個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) --得到的結果,最後你需要怎麼處理就怎麼處理,這里返回的是表
以上只是思路,我是沒這么用過,你自己看著辦