我想通过单个查询从多个表中获取数据。 示例:
表-A:
| LOT | ITEM | QTY |
--------------------------
| 001 | PAPER | 20 |
| 002 | INK | 10 |
| 003 | PEN | 25 |
--------------------------
表-B:
| LOT | ITEM | QTY |
--------------------------
| 001 | PAPER | 20 |
| 002 | INK | 10 |
| 003 | PEN | 25 |
--------------------------
表-C:
| LOT | ITEM | QTY |
--------------------------
| 001 | PAPER | 20 |
| 002 | INK | 10 |
| 003 | PEN | 25 |
--------------------------
当我从所有表中选择 LOT 001 时,我想要的结果是:
| TABLE NAME | LOT | ITEM | QTY |
---------------------------------
| TABLE-A | 001 | PAPER| 20 |
| TABLE-B | 001 | PAPER| 20 |
| TABLE-C | 001 | PAPER| 20 |
---------------------------------
感谢帮助
最佳答案
尝试这样的事情:
SELECT T.* FROM(
SELECT 'TABLE-A' AS TABLE_NAME, LOT, ITEM, QTY FROM TABLE_A
UNION ALL
SELECT 'TABLE-B' AS TABLE_NAME, LOT, ITEM, QTY FROM TABLE_B
UNION ALL
SELECT 'TABLE-C' AS TABLE_NAME, LOT, ITEM, QTY FROM TABLE_C
) AS T
WHERE T.LOT = '001';
关于mysql - 多个表导致单个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30997520/