MySQL查询保存数据库名称

时间:2015-07-01 09:04:28

标签: mysql mysql-workbench

以下是我正在处理的数据库和表格,

数据库A

TABLEA

╔════╦══════════════╦══════╗
║ KID║  REVLIMIT    ║ REV  ║
╠════╬══════════════╬══════╣
║  13║ 4440         ║  39  ║ 
║  14║ 2340         ║  58  ║ 
║  15║ 852200       ║  69  ║ 
║  16║ 85205        ║  78  ║ 
║  46║ 8500         ║  79  ║ 
║  64║ 853          ║  67  ║ 
╚════╩══════════════╩══════╝

----------------------------------------------- ---------------------

数据库B

TABLEA

╔════╦══════════════╦══════╗
║ KID║  REVLIMIT    ║ REV  ║
╠════╬══════════════╬══════╣
║ 55 ║ 4440         ║  139 ║ 
║ 52 ║ 2340         ║  518 ║ 
║ 122║ 852200       ║  619 ║ 
║ 15 ║ 85205        ║  178 ║ 
║ 251║ 8500         ║  719 ║ 
║ 221║ 853          ║  617 ║ 
╚════╩══════════════╩══════╝

----------------------------------------------- ---------------------

我需要使用 KID 搜索两个数据库 tableA 以获取 REV ,以便获得以下结果

tableC

╔════╦══════════════╦══════╦═════════════════╗
║ KID║  Model_No    ║ REV  ║  Database_name  ║
╠════╬══════════════╬══════╣═════════════════╣
║  13║ 43453453345  ║  39  ║     Database A  ║
║  55║ 2433423423   ║  139 ║     Database B  ║
║  14║ 5566533      ║  58  ║     Database A  ║
╚════╩══════════════╩══════╝═════════════════╝

即我获得 REV 的数据库名称也应保存在 tablec 中 我只能使用普通的MySQL查询,我无法改变结构,如何以最简单的方式完成? 提前致谢

1 个答案:

答案 0 :(得分:0)

联合两个表

select kid, rev, 'Database_A' as Database_name from `database_a`.tableA
union
select kid, rev, 'Database_B' as Database_name from `database_b`.tableA;