gpt4 book ai didi

mysql - 如何通过一个请求合并 2 个表

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

所以我得到了 2 个具有以下结构的表:

CREATE TABLE courses(
id bigint not null auto_increment,
title varchar(255) default '',
primary key(id)
);

CREATE TABLE course_dates(
id bigint not null auto_increment,
course_id bigint,
`date` date,
key idx(course_id,date),
primary key(id)
);

因此类(class)存储在第一个表中,类(class)日期存储在第二个表中(每个类(class)可以有无限数量的日期)

我需要使用一个查询一次获取所有类(class)行(及其所有日期)

例如,如果我有包含此类数据的表格:

courses:
id | title
1 | course#1
2 | course#2

course_dates:
id | course_id | date
1 | 1 | 2012-12-25
2 | 1 | 2012-12-27
3 | 1 | 2012-12-31
4 | 2 | 2012-12-23
5 | 2 | 2012-12-30

然后我需要这样的结果行:

id | course_id | date       | title
1 | 1 | 2012-12-25 | course#1
2 | 1 | 2012-12-27 | course#1
3 | 1 | 2012-12-31 | course#1
4 | 2 | 2012-12-23 | course#2
5 | 2 | 2012-12-30 | course#2

最佳答案

一个简单的 INNER JOIN 就可以了。

SELECT  b.*, a.title
FROM Courses a
INNER JOIN Courses_Dates b
ON a.id = b.Course_ID

要了解有关联接的更多信息,请参阅下面的链接

关于mysql - 如何通过一个请求合并 2 个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14027180/

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