Mysql:从一组数据表中筛选出不存在某字段的数据表?

开发中,发现执行某查询时报错:{"code":500,"msg":"数据库连接失败: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'ur_total' in 'field list'"},

表明某个表或某些表中,不存在ur_total的字段,但因为相同前缀的表过多,无法一一排除是哪个或哪些。

使用SQL语句进行查询:

SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'data_labife'  -- 替换为你的数据库名
  AND TABLE_NAME LIKE 'ea_sight_rt_%'  -- 替换为你的表名前缀
  AND TABLE_NAME NOT IN (
    SELECT TABLE_NAME
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_SCHEMA = 'data_labife'  -- 替换为你的数据库名
      AND COLUMN_NAME = 'ur_total'
  );

查询结果:

image

 进入该数据表检查:

image

 实际应该结构:

image

 

posted @ 2025-12-04 10:39  coderjim  阅读(2)  评论(0)    收藏  举报

更多知识请点击——

www.7017online.xyz