阅读量:3
假设我们有两个表,一个是students表,包含学生的姓名和学号,另一个是courses表,包含课程的名称和课程号。我们希望得到一个包含所有学生和所有课程的组合的结果集。
首先,创建students表并插入一些数据:
CREATE TABLE students (
student_id INT PRIMARY KEY,
student_name VARCHAR(50)
);
INSERT INTO students (student_id, student_name) VALUES
(1, 'Alice'),
(2, 'Bob'),
(3, 'Charlie');
然后创建courses表并插入一些数据:
CREATE TABLE courses (
course_id INT PRIMARY KEY,
course_name VARCHAR(50)
);
INSERT INTO courses (course_id, course_name) VALUES
(101, 'Math'),
(102, 'Science'),
(103, 'History');
现在,使用CROSS JOIN操作来获取所有学生和所有课程的组合:
SELECT students.student_name, courses.course_name
FROM students
CROSS JOIN courses;
这将得到如下结果集:
student_name | course_name
-------------|------------
Alice | Math
Alice | Science
Alice | History
Bob | Math
Bob | Science
Bob | History
Charlie | Math
Charlie | Science
Charlie | History
在这个例子中,我们使用CROSS JOIN操作获取了所有学生和所有课程的组合。这种操作在需要获取多个表之间的所有可能组合时非常有用。
以上就是关于“MySQL cross join应用案例”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm