如果我在搜索中错过了解决方案,我会提前道歉。
我发现在我正在测试的数据库中散布着NULL值。
我能够在表中找到所有空值,问题是我正在测试的数据库有517个表,所以下面的查询结构将不起作用,因为我所做的那些列不可能用于那个数量的表< / p>
select
*
from
Table
where
tbl_column1 or tbl_column2 or tbl_column3 or tbl_column4
is null
这在MySQL中是否可行,我如何找到所有空值
我可以使用
获取所有列实例SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME IN ('tbl_column1','tbl_column2')
AND TABLE_SCHEMA='DBwithManyTables';
这是解决方案的一部分吗?
有关如何执行此操作的任何想法?
答案 0 :(得分:0)
您可以可能对此处的脚本进行一些修改:http://forge.mysql.com/tools/tool.php?id=232
您可能需要更改此行...
'SELECT COUNT(*) INTO @CNT_VALUE FROM `',table_schema,'`.`',table_name,'` WHERE `', column_name,'` REGEXP ''',in_search,''';'
......就像这样......
'SELECT COUNT(*) INTO @CNT_VALUE FROM `',table_schema,'`.`',table_name,'` WHERE `', column_name,'` IS NULL''';'
...你可能还需要做一些其他修改,但我相信使用该脚本作为你的基础将引导你获得你正在寻找的信息。