Mysql 如何检查数据库中的数据是否存在,而不考虑列名?
我有一个表,有四列,每列包含一封电子邮件。我想检查数据是否存在于四列中的任何一列中,而不执行特定的列查询,我的意思是Mysql 如何检查数据库中的数据是否存在,而不考虑列名?,mysql,sql,database,Mysql,Sql,Database,我有一个表,有四列,每列包含一封电子邮件。我想检查数据是否存在于四列中的任何一列中,而不执行特定的列查询,我的意思是 SELECT * FROM 'table_name' WHERE 'column_1'='data'; SELECT * FROM 'table_name' WHERE 'column_2'='data'; SELECT * FROM 'table_name' WHERE 'column_3'='data'; SELECT * FROM 'table_name' WHERE 'c
SELECT * FROM 'table_name' WHERE 'column_1'='data';
SELECT * FROM 'table_name' WHERE 'column_2'='data';
SELECT * FROM 'table_name' WHERE 'column_3'='data';
SELECT * FROM 'table_name' WHERE 'column_4'='data';
有没有办法做到这一点。我限制了4列,如果列数非常大怎么办?谢谢。假设只有4列,您可以这样做:
SELECT * FROM table_name WHERE 'data' IN (column_1, column_2, column_3, column_4);
表示表名是固定的,但列名是动态的。它将检查该表的所有列。我的理解正确吗?如果我有100列或未知列数怎么办?你在问题中提到只有4列,这就是为什么解决方案是4列。如果有一组列,可以将它们添加到in子句中。如果您没有设置数量的列,那么您需要考虑动态生成查询,这可能会很混乱,而且需要大量的工作。。。