【发布时间】:2015-11-05 13:34:01
【问题描述】:
我是 MySQL 新手,我很难理解如何跨多个数据库进行查询。
解释基础架构,我目前正在执行一项任务,我在一个公共测试数据库中,该数据库具有一组数据库。
我有一个标识符值,我想在我知道存在于特定表中的所有数据库中进行搜索。在此示例中,我将使用表名“table1”。问题是,并非所有数据库都拥有我在表中查找的标识符列。
我的问题涉及两个部分: -如何搜索所有数据库以返回包含此列中特定值的所有数据库名称的集合 (table1.id) -如何验证该列是否存在,以便我可以实际进行检查以查看我要查找的 id 是否与其他数据库的 table1.id 值匹配?
在较小的范围内,我制定了检查单个表的代码:
SELECT * FROM table1
WHERE searchId = db1.table1.id;
不同之处在于,我想在所有数据库 table1 中搜索该特定值,同时确保该列首先存在于表中。
【问题讨论】:
-
您“在一个拥有数据库集合的公共测试数据库中”。你到底是什么意思?
-
我正在使用一个包含多个数据库的数据库,即:db1 db2 db3 ... 然后,在每个数据库中,有一组表不一定与另一个相同数据库。
-
你的意思是模式吗?在 MySQL 中也是一样的……见这里:stackoverflow.com/questions/11618277/…