gpt4 book ai didi

mysql - 如何显示同一数据库中2个表的所有记录?

转载 作者:行者123 更新时间:2023-11-29 22:13:22 25 4
gpt4 key购买 nike

我正在为完成学士学位所需的类(class)创建一个数据库。我的数据库中有两个表,“gereport”和“majorreport”。两个表中都有相同的信息,但我希望它们分开。我的问题是,我试图了解我仍然需要参加的所有类(class)的概述,包括通用类(class)和专业类(class)。我尝试执行以下操作:

mysql> SELECT gereport.*, majorreport.* FROM gereport, majorreport;

这是我得到的结果:

+-------+-----------+-------+------+-------+---------+-------+------+
| area | class | units | done | area | class | units | done |
+-------+-----------+-------+------+-------+---------+-------+------+
| A1 | TRANSFER | 2.66 | yes | LD | CS 46A | 3 | yes |
| A1 | TRANSFER | 2.66 | yes | LD | CS 46B | 3 | yes |
| A1 | TRANSFER | 2.66 | yes | LD | CS 46A | 6 | yes |
| A1 | TRANSFER | 2.66 | yes | LD | CS 49J | 3 | yes |

快进,我得到了以下列表: 一组 464 行(0.00 秒)

总共应该只有 45 行。我对 mysql 很陌生。我可以使用任何命令使每个表中的行显示在一个表中吗?我不能有主键,因为有些类可以位于多个区域,而有些区域有多个类。

简而言之,我想我想要的是表格向下连接,而不是横向连接。

最佳答案

你想要一个工会:

来自 MySQL 文档 ( https://dev.mysql.com/doc/refman/5.0/en/union.html )

UNION is used to combine the result from multiple SELECT statements into a single result set.

select * from gereport
UNION
select * from majorreport;

请注意,在我看来,最好对列进行明确说明,以便清楚地表明列已正确“堆叠”。所以我会像这样编写查询:

select area, class, units, done from gereport
UNION
select area, class, units, done from majorreport;

关于mysql - 如何显示同一数据库中2个表的所有记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31419691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com