You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL Server中查询包含指定字段的所有数据表?

SQL Server查询包含指定字段的所有表方案

你可以通过查询SQL Server内置的系统视图快速定位符合要求的表,无需手动逐个排查,以下是两种常用实现方式,以查找包含household_no字段的表为例:

方法1:使用通用系统视图INFORMATION_SCHEMA.COLUMNS

该视图符合SQL标准,语法简单易读,适合大多数场景:

-- 先切换到目标数据库,也可以手动在SSMS里选择对应数据库
USE 你的数据库名称;

SELECT 
    TABLE_SCHEMA 表所属架构,
    TABLE_NAME 表名
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME = 'household_no'
ORDER BY TABLE_SCHEMA, TABLE_NAME;

方法2:使用SQL Server专属系统视图

关联sys.columns、sys.tables系统表,查询效率更高,适合表数量多的场景:

USE 你的数据库名称;

SELECT 
    s.name 表所属架构,
    t.name 表名
FROM sys.columns c
JOIN sys.tables t ON c.object_id = t.object_id
JOIN sys.schemas s ON t.schema_id = s.schema_id
WHERE c.name = 'household_no'
ORDER BY s.name, t.name;

补充说明

  • 若需要模糊匹配字段,将WHERE条件中的等值判断改为COLUMN_NAME LIKE '%你要匹配的关键词%'即可
  • 若需要同时查询视图是否包含该字段,方法1的查询范围新增TABLE_TYPE = 'VIEW'过滤即可,方法2将sys.tables替换为sys.views即可
  • 字段名的匹配大小写规则和你数据库的默认排序规则一致,如有大小写敏感匹配需求,可在WHERE条件后添加COLLATE指定对应排序规则

内容的提问来源于stack exchange,提问作者Mus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 01:36:05