日夏养花网

您好,欢迎访问日夏养花网,我们的网址是:http://www.rixia.cc

SQLSERVER 如何查询整个数据库中某个特定值所在的表和字段

2021-12-26 01:40:38 分类:养花问答 来源: 日夏养花网 作者: [db:作者] 阅读:163

sqlserver数据库中怎么查询某个字段中含有某些字?

一、举个例子

表名为zwj,字段为sp,查询sp字段中含有'所有'的语句为select * from zwj where sp like '%所有%' --表名为zwj,字段为sp,查询sp字段中含有'所'日夏养花网;或'有'的语句为select * from zwj where sp like '%所%' or sp like '%有%'

二、含有医院编号字段的所有表

select a.[name] 表名 from sysobjects a,

( select [id],count(*) b from syscolumns

where [name] ='HospitalId'

group by [id])

b where a.[id]=b.[id]

三、同时含有医院编号和科室编号字段的所有表

select a.[name] 表名 from sysobjects a

left join

(select [id],count(*) b from syscolumns where [name]

in('HospitalId','DepartmentId') group by [id] having count(*)>1) b

on a.[id]=b.[id]

where b.id is not null

用like语句查询。

举例:

表名为zwj,字段为sp,查询sp字段中含有'所有'的语句为:select * from zwj where sp like '%所有%'

表名为zwj,字段为sp,查询sp字段中含有'所'或'有'的语句为:select * from zwj where sp like '%所%' or sp like '%有%'。

mysql中怎么查询数据库中某个特定值所在的表和字段

网页链接

这个可以用

应该不能查找一个特定的值所在的表吧

SQL数据库,如何查询数据库内含有某一列(某字段,如name)的所有表

1、如何查询数据库内含有某一列(某字段,如name)的所有表名。rn2、查询数据库内含有字段(如 name=‘AAA’)的数据库内多有的表名。

SQL数据库,查询包含列(字段,如名称)的数据库中的所有表的步骤如下:需要准备的材料是:计算机,sql finder。

1,首先,打开sql查询器并连接到相应的数据连接,例如测试库。

2,单击“查询”按钮并键入:select table_name来自information_schema.columns,其中table_schema =“test”和column_name =“name”;。

3,单击“运行”按钮,将查询符合条件的表名称。

4,将查询调整为:选择'store'作为table_namewww.rixia.cc,`name`来自商店,其中`name` =“A”union all选择'stu'作为table_name,`name`来自stu where`name` =“A”Union所有选择'test'作为table_name,`name`来测试`name` =“A”,单击“运行”按钮查找名称为'A'的表的名称。

SQL数据库,查询数据库内含有某一列(某字段,如name)的所有表的步骤如下:

我们需要准备的材料分别是:电脑、sql查询器。

1、首先,打开sql查询器,连接上相应的数据连接,,例如test库。

2、点击“查询”按钮,输入:select table_name from information_schema.columns where table_schema="test" and column_name="name";。

3、点击“运行”按钮,此时会查询出符合条件的表名。

4、将查询语句调整为:select 'store' as table_name, `name` from store where `name`="A" union all se日夏养花网lect 'stu' as table_name, `name` from stu where `name`="A" union all select 'test' as table_name, `name` from test where `name`="A",点击“运行”按钮,即可查到含name='A'的表名。

应该是不需要存储过程的。下面通过查找字段名为姓名为例。
1.
select OBJECT_NAME(id) from syscolumns where id in(
select id from sysobjects wheaIyjTNNFEre type='U')
and name='姓名'
2.第二个问题更简单了
select OBJECT_NAME(id) from syscolumns where id in(
select id from sysobjects where type='U')
and name like '%类型%'
有问题再追问吧。
详细方法和语句可以参考我的博客:
http://blog.sina.com.cn/s/blog_9f39f0c70102ux87.html
里面的第一篇:标题是:1、给定字符串查找表。
祝你成功!

sql查询数据库中有某个值的所有表

我现在只知道数据库中有这么一个值(比如‘123’)rn要求输出有这个值(123)的所有表

1、首先在电脑中打开Microsoft SQL Server,查询所有数据库。

2、查询当前数据库中所有表名。说明:xtype='U':表示所有用户表,xtype='S':表示所有系统表。

3、查询指定表中的所有字段名。

4、然后查询指定表中,所有字段名和字段类型。

5、接着获取主键字段,获取数据库所有类型,就完成了。

1、查询所有数据库。

2、查询当前数据库中所有表名,说明:xtype='U':表示所有用户表,xtype='S':表示所有系统表。

3、查询指定表中的所有字段名。

4、查询指定表中的所有字段名和字段类型。

5、获取主键字段。

6、获取数据库所有类型。

--搜索所有表列数据
DECLARE @string VARCHAR(100)='123' --要查询的数据,内容自行修改
DECLARE @sql NVARCHAR(MAX)
SET @sql=N'DECLARE @sql NVARCHAR(MAX),@ColNames NVARCHAR(MAX),@ColValues NVARCHAR(MAX);SET @ColNames=NULL;SET @ColValues=NULL;
SELECT @ColNames=ISNULL(@ColNames+'','','''')+QUOTENAME(c.[Name])
,@ColValues=ISNULL(@ColValues, ''''''''+OBJECT_NAME(c.object_id)+''''''''+'' AS [TableName]'')+'',''+ ''RTRIM(CONVERT(NVARCHAR(max),''+QUOTENAME(c.[Name])+'')) AS ''+QUOTENAME(c.[Name])
FROM sys.[columns] AS c where c.object_id=object_id(N''?'');
set @sql= ''SELECT * FROM (SELECT ''+ @ColValues+'' FROM ''+''?''+'' ) as t UNPIVOT(ColumnValue FOR ColumName IN (''+@ColNames+'')) u WHERE CHARINDEX('''''+@string+N''''',ColumnValue)>0'';
print @sql;
EXEC(@sql)'
PRINT @sql
EXEC sp_MsforeachTable @command1=@sql
CREATE PROCEDURE dbo.FindString
@string NVARCHAR(100)
AS

DECLARE @SQL NVARCHAR(4000);
SET @SQL = N'
DECLARE @str NVARCHAR(4000);
SELECT
@str = ISNULL(@str + N'' OR '' + c.name + N'' LIKE N''''%'
+ @string + ' %'''''',
c.name + N'' LIKE N''''%' + @string +'%'''''') FROM syscolumns AS c J日夏养花网OIN systypes AS t ON c.id=OBJECT_ID(''?'')
AND c.xtype=t.xtype
AND t.name IN(''varchar'',''char'',''nvarchar'',''nchar'');

SET @str = ''SELECT TOP 1 1 FROM ? WHERE ''+@str;
CREATE TABLE #tb(a int);
INSERT #tb(a) EXEC(@str);
IF EXISTS(SELECT * FROM #tb)
PRINT ''?''
';
EXEC sp_MsforeachTable @SQL;
GO

别人写的一个存储过程的例子,看看对你有没有用...
oracle中查看表名包含 123的 所有表

SELECT TABLE_NAME FROM USER_TABLES
WHERE TABLE_NAME LIKE '%123%'

文章标签:

本文标题: SQLSERVER 如何查询整个数据库中某个特定值所在的表和字段
本文地址: http://www.rixia.cc/wenda/196572.html

上一篇:如图甲是反射弧的组成示意图(虚线内为神经中枢),图乙是一个突触的结构示意图,根据图示信息回答下列问

下一篇:解剖一朵花,找到以下结构:雄蕊,雌蕊,花瓣,花萼.(要照片) 要解剖前照片,解剖中照片,解剖后照片

相关推荐

推荐阅读

猜你喜欢

返回顶部