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

如何在门户网站做推广软件外包网站

如何在门户网站做推广,软件外包网站,德州专业网站制作哪家好,dw做aspx网站文章目录 1、多表连接查询(JOIN 多张表)1.1. 基本概念1.2. 三表连接示例:学生、课程、教师表1.3. 多表连接查询语句 2、自连接(SELF JOIN)2.1. 基本概念2.2. 示例:员工和经理关系2.3. 自连接查询语句 3、笛…

文章目录

  • 1、多表连接查询(JOIN 多张表)
    • 1.1. 基本概念
    • 1.2. 三表连接示例:学生、课程、教师表
    • 1.3. 多表连接查询语句
  • 2、自连接(SELF JOIN)
    • 2.1. 基本概念
    • 2.2. 示例:员工和经理关系
    • 2.3. 自连接查询语句
  • 3、笛卡尔积(CROSS JOIN)
    • 3.1. 基本概念
    • 3.2. 语法示例
    • 3.3. 注意事项
  • 4、实践任务
    • 4.1. 创建三张表(员工表、部门表、经理表)
    • 4.2. 插入数据
    • 4.3. 多表联合查询:查询员工姓名、部门名称和经理姓名
    • 4.4. 自连接案例(更简单版)
  • 5、今日小结

1、多表连接查询(JOIN 多张表)

1.1. 基本概念

  • 当需要同时查询三张或更多张表 的数据时,可以使用多次 JOIN 把表连接起来。
  • 连接逻辑通常基于主键和外键之间的关联关系。

1.2. 三表连接示例:学生、课程、教师表

假设有以下三张表:

-- 学生表
CREATE TABLE student (student_id INT PRIMARY KEY,name VARCHAR(100)
);-- 课程表
CREATE TABLE course (course_id INT PRIMARY KEY,course_name VARCHAR(100),teacher_id INT
);-- 教师表
CREATE TABLE teacher (teacher_id INT PRIMARY KEY,teacher_name VARCHAR(100)
);

查询需求: 列出每个学生选的课程及任课教师姓名。
通常还需要一个中间表(选课表):

-- 选课表
CREATE TABLE enrollment (enroll_id INT PRIMARY KEY,student_id INT,course_id INT
);

1.3. 多表连接查询语句

SELECT student.name AS student_name,course.course_name,teacher.teacher_name
FROM enrollment
INNER JOIN student ON enrollment.student_id = student.student_id
INNER JOIN course ON enrollment.course_id = course.course_id
INNER JOIN teacher ON course.teacher_id = teacher.teacher_id;
  • 解释:
  • 通过 enrollment 表把学生和课程联系起来。
  • 通过 course 表中的teacher_id字段进一步连接到教师表。

2、自连接(SELF JOIN)

2.1. 基本概念

  • 自连接 就是同一张表 自己连接自己。
  • 适合表示具有层级关系 的数据,如员工与经理、类别与子类别。

2.2. 示例:员工和经理关系

假设有一张员工表:

-- 员工表
CREATE TABLE employee (emp_id INT PRIMARY KEY,emp_name VARCHAR(100),manager_id INT  -- 上级经理ID,指向本表emp_id
);

插入示例数据:

INSERT INTO employee (emp_id, emp_name, manager_id) VALUES
(1, '王总', NULL),
(2, '李经理', 1),
(3, '张主管', 2),
(4, '赵员工', 3);

2.3. 自连接查询语句

查询每位员工及其经理的名字:

SELECT e1.emp_name AS employee_name,e2.emp_name AS manager_name
FROM employee e1
LEFT JOIN employee e2 ON e1.manager_id = e2.emp_id;
  • 解释:
  • e1 表示员工自己。
  • e2 表示经理。
  • 使用 LEFT JOIN,即使有些员工(如总经理)没有上级,结果中也能出现。

3、笛卡尔积(CROSS JOIN)

3.1. 基本概念

  • CROSS JOIN ** 会返回两张表的所有组合** (即:表A的每一行都和表B的每一行匹配)。
  • 通常如果不加 ON 条件,或者写错了连接条件,就会出现笛卡尔积 现象,导致数据量暴涨。

3.2. 语法示例

SELECT *
FROM 表A
CROSS JOIN 表B;

SELECT *
FROM 表A, 表B;
  • 结果 :行数 = 表A行数 × 表B行数。

3.3. 注意事项

  • 笛卡尔积在大多数实际场景下需要避免 ,因为通常是由于漏写或写错连接条件引起的。
  • 实际应用中,明确 JOIN 条件 非常重要!

4、实践任务

4.1. 创建三张表(员工表、部门表、经理表)

-- 员工表
CREATE TABLE employee (emp_id INT PRIMARY KEY,emp_name VARCHAR(100),dept_id INT,manager_id INT
);-- 部门表
CREATE TABLE department (dept_id INT PRIMARY KEY,dept_name VARCHAR(100)
);-- 经理表(也是员工,只是额外列出)
CREATE TABLE manager (manager_id INT PRIMARY KEY,manager_name VARCHAR(100)
);

4.2. 插入数据

-- 员工
INSERT INTO employee (emp_id, emp_name, dept_id, manager_id) VALUES
(1, '张三', 10, 100),
(2, '李四', 20, 101),
(3, '王五', 10, 100);-- 部门
INSERT INTO department (dept_id, dept_name) VALUES
(10, '技术部'),
(20, '市场部');-- 经理
INSERT INTO manager (manager_id, manager_name) VALUES
(100, '赵总'),
(101, '钱总');

4.3. 多表联合查询:查询员工姓名、部门名称和经理姓名

SELECT e.emp_name,d.dept_name,m.manager_name
FROM employee e
INNER JOIN department d ON e.dept_id = d.dept_id
INNER JOIN manager m ON e.manager_id = m.manager_id;

4.4. 自连接案例(更简单版)

如果不用经理表,只用员工表(员工自己记录经理ID):

SELECT e1.emp_name AS employee,e2.emp_name AS manager
FROM employee e1
LEFT JOIN employee e2 ON e1.manager_id = e2.emp_id;

5、今日小结

内容关键词说明
多表联合查询多次 INNER JOIN查询多张表的数据关联
自连接SELF JOIN表与自己连接,处理层级关系
笛卡尔积CROSS JOIN所有组合,通常需要避免
http://www.dtcms.com/wzjs/488509.html

相关文章:

  • 外贸工厂 网站建设广告营销
  • 文登区做网站的公司链接搜索
  • 网站建设五行属什么中国十大品牌营销策划公司
  • 武进网站建设哪家好推广网络广告
  • 政府网站安全建设北京seo费用是多少
  • 科技网络网站建设中国新闻网
  • 电商详情做的最好看的网站百度免费广告发布平台
  • 电商网站开发脑图seo视频教程我要自学网
  • 自己做网站seo全媒体广告投放平台
  • 网站建设哪家go怎么免费制作网页
  • wordpress兼容html百度seo排名优化软件分类
  • 做网站需要会什么指数型基金怎么买
  • 上海网站建设电西安百度推广运营
  • 网站管理员功能网站排名工具
  • 网站改版声明营销活动怎么做吸引人
  • 自己做网站免费百度一下子就知道了
  • 西大路网站建设公司北京百度总部电话
  • 劫持网站挂广告是个人做的吗站长统计app软件大全
  • 淘宝客单页网站营销策划与运营方案
  • 免费二维码制作生成器百度竞价推广关键词优化
  • rio门户网站的制作网络软文是什么意思
  • 网站设计建设合同河南郑州最近的热搜事件
  • 网站上如何做跳转页面网络营销有哪几种方式
  • 网站建设银川网站怎样优化文章关键词
  • angeljs做的网站seo引擎搜索网站关键词
  • 济宁百度网站建设百度地图导航2022最新版下载
  • 金科做的网站网络营销专业学校排名
  • 做淘宝客的的网站有什么要求吗新网站应该怎么做seo
  • 酒泉网站建设平台企业宣传册模板
  • 网站建站视频教程seo人才招聘