我有一个带有几个表的MYSQL数据库,所有表都具有相同的结构。我想搜索所有的表,以找到某一列具有特定值的行。我必须逐个搜索表,还是有一种更简单的方法?
发布于 2015-02-06 03:24:50
您可以联合所有的表。你仍然需要一个接一个地遍历所有的表,但在union
的情况下,你不会有笛卡尔乘法,因此最好的方法是:
SELECT column FROM table1 WHERE column = 'value'
UNION ALL
SELECT column FROM table2 WHERE column = 'value'
;
发布于 2015-02-06 03:24:58
很容易完成,也可以在MYSQL工作台上测试。
全选:
SELECT * FROM table_one, table_two;
从两个表中选择一个值:
SELECT * FROM table_one, table_two WHERE field = 'some_val'
从两个表中选择多个值:
SELECT * FROM table_one, table_two WHERE field = 'some_val' AND field2 = 'some_val' AND field3 = 'some_val'
https://stackoverflow.com/questions/28352159
复制相似问题