当前位置: 首页 > news >正文

揭阳企业网站模板建站郑州企业网站如何建设

揭阳企业网站模板建站,郑州企业网站如何建设,中国代加工网站,朋友让帮忙做网站文章目录 1、关系型数据库中的表关系2、连接(JOIN)的基本概念3、INNER JOIN(内连接)3.1. 概念3.2. 语法结构 4、LEFT JOIN(左连接)4.1. 概念4.2. 语法结构 5、RIGHT JOIN(右连接)&am…

文章目录

  • 1、关系型数据库中的表关系
  • 2、连接(JOIN)的基本概念
  • 3、INNER JOIN(内连接)
    • 3.1. 概念
    • 3.2. 语法结构
  • 4、LEFT JOIN(左连接)
    • 4.1. 概念
    • 4.2. 语法结构
  • 5、RIGHT JOIN(右连接)(了解)
  • 6、实践任务
    • 6.2. 用 INNER JOIN 查询选课信息
    • 6.3. 用 LEFT JOIN 查询所有学生及选课情况
  • 7、今日小结

1、关系型数据库中的表关系

在实际数据库设计中,不同的表之间通过字段建立联系,常见的关系有:

类型说明示例
一对一(1:1)一个表中的一条记录对应另一个表中的一条记录用户表与用户详情表
一对多(1:N)一个表中的一条记录对应另一个表中的多条记录学生表与成绩表(一个学生有多门成绩)
多对多(M:N)多条记录对应多条记录,中间需要第三张表关联学生选课(一个学生选多门课,一门课有多名学生)

2、连接(JOIN)的基本概念

JOIN 用来根据两个表之间的关系,把相关联的数据查询出来。
常见的 JOIN 类型有:

JOIN 类型作用
INNER JOIN(内连接)只返回两个表中匹配的记录
LEFT JOIN(左连接)返回左表所有记录,即使右表没有匹配
RIGHT JOIN(右连接)返回右表所有记录,即使左表没有匹配(了解即可)

3、INNER JOIN(内连接)

3.1. 概念

  • 只返回两个表中 有匹配关系 的记录。
  • 如果在任一表中找不到匹配记录,该行不会出现在结果中。

3.2. 语法结构

SELECT 字段列表
FROM1
INNER JOIN2
ON1.关联字段 =2.关联字段;
  • 示例:查询学生及其选修的课程名称
    假设有以下两张表:
-- 学生表
CREATE TABLE student (student_id INT PRIMARY KEY,name VARCHAR(100)
);-- 选课表
CREATE TABLE enrollment (enroll_id INT PRIMARY KEY,student_id INT,course_name VARCHAR(100)
);

查询每个学生选修的课程:

SELECT student.name, enrollment.course_name
FROM student
INNER JOIN enrollment ON student.student_id = enrollment.student_id;
  • 结果 :只显示那些有选课记录的学生及其课程。

4、LEFT JOIN(左连接)

4.1. 概念

  • 返回左表(第一个表)的所有记录。
  • 如果右表中有匹配记录,则显示;如果没有匹配,右表字段显示 NULL。

4.2. 语法结构

SELECT 字段列表
FROM1
LEFT JOIN2
ON1.关联字段 =2.关联字段;
  • 示例:列出所有学生及他们对应的选课,如果没选课显示空值
SELECT student.name, enrollment.course_name
FROM student
LEFT JOIN enrollment ON student.student_id = enrollment.student_id;
  • 结果 :即使有的学生没有选课记录,仍然会显示学生姓名,选课栏为 NULL。

5、RIGHT JOIN(右连接)(了解)

  • RIGHT JOIN 与 LEFT JOIN 类似,只是它保留的是右表的所有记录,即使左表中没有匹配。
  • 语法示例(仅了解):
SELECT student.name, enrollment.course_name
FROM student
RIGHT JOIN enrollment ON student.student_id = enrollment.student_id;
  • 使用场景较少,通常通过调整表顺序+LEFT JOIN可以代替。

6、实践任务

6.1. 创建两个表

-- 学生表
CREATE TABLE student (student_id INT PRIMARY KEY,name VARCHAR(100)
);-- 选课表
CREATE TABLE enrollment (enroll_id INT PRIMARY KEY,student_id INT,course_name VARCHAR(100)
);-- 插入学生数据
INSERT INTO student (student_id, name) VALUES
(1, '张三'),
(2, '李四'),
(3, '王五');-- 插入选课数据
INSERT INTO enrollment (enroll_id, student_id, course_name) VALUES
(1, 1, '数学'),
(2, 1, '英语'),
(3, 2, '物理');

6.2. 用 INNER JOIN 查询选课信息

SELECT student.name, enrollment.course_name
FROM student
INNER JOIN enrollment ON student.student_id = enrollment.student_id;

结果 :张三选了数学和英语,李四选了物理,王五没有记录,不会出现在结果中。

6.3. 用 LEFT JOIN 查询所有学生及选课情况

SELECT student.name, enrollment.course_name
FROM student
LEFT JOIN enrollment ON student.student_id = enrollment.student_id;

结果 :张三、李四、王五都会出现;王五因为没有选课,course_name 显示 NULL。

7、今日小结

内容关键词说明
多表关系一对一、一对多、多对多数据表之间常见的组织关系
INNER JOIN只返回匹配的记录双方都有数据才能显示
LEFT JOIN保留左表全部记录右表没有匹配的用 NULL 填充
RIGHT JOIN保留右表全部记录用得少,了解即可
http://www.dtcms.com/a/539494.html

相关文章:

  • 网站布局设计创意嘉兴网站建设公司
  • 建设一个电商网站的流程图wordpress 字体类型
  • 查询建设工程规范的网站公司做个网站好还是做公众号好
  • 广州seo网站排名优化知名品牌vi设计
  • 企业二级网站怎么做网站建设 海拉尔
  • 莱芜网站建设方案公司wordpress成长记录网站模版
  • 美发网站源码wordpress传上七牛
  • 济南网站运营教学督导网站建设报告
  • 想建个网站什么代码都是自己写下载爱南宁官方网站
  • 网站项目需要什么e建网
  • 宁波网站建设优化诊断网站建设与维护方式是什么
  • 安徽省六安市城乡建设厅网站做游戏陪玩网站
  • 连云港网站建设案例青岛栈桥导游词
  • 知己知彼网站长沙阳性1例
  • 巩义网站网站建设网站建设跟版网
  • 做网站需要去哪里备案深圳旅游
  • 上海市建设工程定额官方网站机房建设网站模板
  • 网站建设嗟商文件网站建设站点地图
  • 网站建设情况报告范文2023最建议买三款手机
  • 免费的企业黄页网站合肥网站建设公司哪家好
  • 网站建设服务的风险长沙做网站好的公司
  • 石家庄市住房城乡建设局网站什么是域名解析服务
  • 潮州市网站建设公司网店推广实训总结
  • 网站建设汇报稿刷百度指数
  • 苏州网站建设培训学校手表网站哪家好
  • 网站架构技术帮人做网站收多少钱
  • 海兴做网站可以免费做会计题的网站
  • 做淘宝客网站要不要备案西部数码做跳转网站
  • 乐清市建设规划局网站建设公司网站广告语
  • 徐州微信网站建设营销型网站建设 上海