首页 > 解决方案 > MySql 从两个表中全选导致很多重复

问题描述

我正在使用 oracle 的 mysql db(最新版本 8.*)。我正在使用带有 express 的节点 js。我有几张布局完全相同的桌子。全部使用 auto_increment id 和一些列。对于索引页。我需要从多个表中获取所有数据。我有以下表格:啤酒(100 行)、非酒精啤酒(7 行)和红葡萄酒(50 行)。

根据Oracle文档一个简单的: SELECT * FROM table1, table2; 或 SELECT * FROM table1 join table2; 应该足够了。它的工作有点......

但如果我这样做,我会得到 52+K 条记录。因此很多重复。我只期望 157 条记录。

一个简单的:'SELECT * FROM table1;' 完美运行。

任何人都可以对这个问题有所了解吗?提前致谢

标签: mysqlnode.jsdatabaseexpressduplicates

解决方案


如果您的表彼此不相关(没有外键)并且您只想将所有结果组合起来,您应该使用UNION. 它合并查询的结果。你可以试试

Select * from table1 
UNION 
Select * from table2

推荐阅读