1 #二、sql99语法
2 /*
3 语法
4 SELECT 查询列表
5 FROM 表1 别名 【连接类型】
6 JOIN 表2 别名
7 on 连接条件
8 【where 筛选条件】
9 【group BY 分组】
10 【having 筛选条件】
11 【order by 排序列表】
12
13 分类:
14 内连接:inner
15 外连接:左外:left【outer】
16 右外:right【outer】
17 全外:full【outer】
18 交叉连接:cross
19 */
20 #一、内连接
21 /*
22 语法:
23 select 查询列表
24 from 表1 别名
25 inner join 表2 别名
26 on 连接条件;
27
28 分类:
29 等值
30 非凳子
31 自连接
32
33 特点
34 ①添加排序、分组、筛选
35 ② inner可以省略
36 ③筛选条件放在 where后面,连接条件放在on后面,提高分离性,便于阅读
37 ④ inner join连接和sq192语法中的等值连接效果是一样的
38 */
39 #案例1、查询员工名、部门名
40 SELECT
41 last_name,
42 department_name
43 FROM
44 employees e
45 INNER JOIN departments d ON e.department_id = d.department_id;
46
47 #案例2.查询名字中包含e的员工名和工种名(筛选)
48 SELECT
49 last_name,
50 job_title
51 FROM
52 employees e
53 INNER JOIN jobs j ON e.job_id = j.job_id
54 WHERE
55 e.last_name LIKE '%e%';
56
57 #案例3.查询部门个数>3的城市名名和部门个数,(分组+筛选)
58 #①查询每个城市的部门个数4
59 #②在①结果上筛选满足条件的
60 SELECT
61 city,
62 department_id,
63 COUNT(*) 部门个数
64 FROM
65 departments d
66 INNER JOIN locations l ON d.location_id = l.location_id
67 GROUP BY
68 city
69 HAVING
70 部门个数 > 3;
71
72 #案例4.查询哪个部门的部门员工个数》3的部门名和员工个数,并按个数降序(排序)
73 SELECT
74 COUNT(*) 员工个数,
75 d.department_name
76 FROM
77 employees e
78 INNER JOIN departments d ON e.department_id = d.department_id
79 GROUP BY
80 department_name
81 HAVING
82 员工个数 > 3
83 ORDER BY
84 员工个数 DESC;
85
86 #案例5,查询员工名、部门名、工种名,并按部门名降序
87 SELECT
88 last_name,
89 department_name,
90 job_title
91 FROM
92 employees e
93 INNER JOIN departments d ON e.department_id = e.department_id
94 INNER JOIN jobs j ON e.job_id = j.job_id
95 ORDER BY
96 department_name DESC;
97
98 #二、非等值连接
99 #查询员工的工资级别
100 SELECT
101 salary,
102 grade_level
103 FROM
104 employees e
105 JOIN job_grades g ON e.salary BETWEEN g.lowest_sal
106 AND g.highest_sal;
107
108 #查询工资级别的个数>20的个数,并且按工资 级别降序
109 SELECT
110 COUNT(*) 工资级别个数,
111 grade_level
112 FROM
113 employees e
114 JOIN job_grades g ON e.salary BETWEEN g.lowest_sal
115 AND g.highest_sal
116 GROUP BY
117 grade_level
118 HAVING
119 COUNT(*) > 20
120 ORDER BY
121 grade_level DESC;

sql99等值&&非等值查询的更多相关文章

  1. mysql的缓冲查询和非缓冲查询

    最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的 ...

  2. php 非缓冲查询

    最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的 ...

  3. php+mysql非缓冲查询(如何循环大数组)

    另外一种PHP查询模式是非缓冲查询,数据库服务器会一条一条的返回数据,而不是一次全部返回,这样的结果就是PHP程序消耗较少的内存,但却增加了数据库服务器的压力,因为数据库会一直等待PHP来取数据,一直 ...

  4. Solr4.8.0源码分析(6)之非排序查询

    Solr4.8.0源码分析(6)之非排序查询 上篇文章简单介绍了Solr的查询流程,本文开始将详细介绍下查询的细节.查询主要分为排序查询和非排序查询,由于两者走的是两个分支,所以本文先介绍下非排序的查 ...

  5. SQL简单嵌套查询与非嵌套查询的比较(MSSQL2005)

    某天的工作是修复某个项目的bug,接着就发现,其sql极其混乱,有非常多的left join和in操作,还有嵌套查询(只有一个表的嵌套查询).不知道看到过哪里的资料说,嵌套查询速度慢,于是我把全部嵌套 ...

  6. (24)ASP.NET Core EF查询(查询的工作原理、跟踪与非跟踪查询)

    1.查询生命周期 在进入正题时候,我们先来了解EF Core查询的生命周期. 1.1LINQ查询会由Entity Framework Core处理并生成给数据库提供程序可处理的表示形式(说白了就是生成 ...

  7. oracle 相关查询和非相关查询,oracle 去除重复数据,以及oracle的分页查询!

    一.oracle中的相关查询?和非相关查询? 二.oracle去除重复数据 1. 2. 3.oracle 实现分页? 利用rownum的唯一性,和子查询,将rownum从伪列变成实际列!

  8. switch case加条件语句(非等值) php

    <?php $s_level=rand(1,6); echo $s_level.'<br/>'; switch(true){ case $s_level<3 : echo 'l ...

  9. ElasticSearch的高级复杂查询:非聚合查询和聚合查询

    一.非聚合复杂查询(这儿展示了非聚合复杂查询的常用流程) 查询条件QueryBuilder的构建方法 1.1 精确查询(必须完全匹配上,相当于SQL语句中的“=”) ① 单个匹配 termQuery ...

  10. 数据库SQL调优的几种方式 EFcore读的情况下使用 AsNoTracking非跟踪查询

    不要用GUID 当主键 没有规律 可以用雪花ID DBA 优化法则 硬件资源是根本,DBA是为了充分利用硬件资源 一般清空下可以不使用外键 可以提高性能 合理使用临时表 临时表分页; 一些查询语句加w ...

随机推荐

  1. 深度学习实践篇[17]:模型压缩技术、模型蒸馏算法:Patient-KD、DistilBERT、DynaBERT、TinyBERT

    深度学习实践篇[17]:模型压缩技术.模型蒸馏算法:Patient-KD.DistilBERT.DynaBERT.TinyBERT 1.模型压缩概述 1.2模型压缩原有 理论上来说,深度神经网络模型越 ...

  2. 21.11 Python 使用CRC图片去重

    使用CRC32还可实现图片去重功能,如下FindRepeatFile函数,运行后通过对所有文件做crc校验并将校验值存储至CatalogueDict字典内,接着依次提取CRC特征值并将其存储至Cata ...

  3. C/C++ 实现常用的线程注入

    各种API远程线程注入的方法,分别是 远程线程注入,普通消息钩子注入,全局消息钩子注入,APC应用层异步注入,ZwCreateThreadEx强力注入,纯汇编实现的线程注入等. 简单编写DLL文件: ...

  4. 多路io复用epoll [补档-2023-07-20]

    多路io- epoll 4-1简介 ​ 它是linux中内核实现io多路/转接复用的一个实现.(epoll不可跨平台,只能用于Linux)io多路转接是指在同一个操作里,同时监听多个输入输出源,在其中 ...

  5. 【译】命名变得简单:AI 支持的重命名建议

    您是否曾经为命名一个变量.方法或类而挣扎过?找到表达性和简洁性之间的完美平衡了吗?您并不孤单.我们通过 GitHub Copilot Chat 扩展(需要订阅)在最新的 Visual Studio 预 ...

  6. Kubernetes:kube-scheduler 源码分析

    0. 前言 [译] kubernetes:kube-scheduler 调度器代码结构概述 介绍了 kube-scheduler 的代码结构.本文围绕代码结构,从源码角度出发,分析 kube-sche ...

  7. 【算法】【回溯】N皇后问题【力扣-51】超详细的注释和解释手撕N皇后

    [算法][回溯]N皇后问题[力扣-51]超详细的注释和解释手撕N皇后 先赞后看好习惯 打字不容易,这都是很用心做的,希望得到支持你 大家的点赞和支持对于我来说是一种非常重要的动力 看完之后别忘记关注我 ...

  8. 【LGR-148-Div.3】洛谷基础赛 #1 & MGOI Round I

    [LGR-148-Div.3]洛谷基础赛 #1 & MGOI Round I T1 luoguP9502 『MGOI』Simple Round I | A. 魔法数字 \(100pts\) 水 ...

  9. STC8A8K64S4A12内部时钟的IRTRIM和LIRTRIM简单标定

    STC8A8K64S4A12因为没有固化的频率调节值, 要么在STC-ISP烧录时设置写入, 要么通过idata高地址读取, 这对于Linux下的SDCC用户就非常不方便, 既不能用STC-ISP, ...

  10. phpBB3在Nginx反向代理中的X-Forwarded-For IP检查

    记录一下phpBB3对反向代理中的IP处理机制 处理几个phpBB3项目迁移, 部分运行场景转移到内网, 需要外网通过nginx/openresty之类的网关反向代理进行访问. 在网关处已经正确配置了 ...