sql简单练习——随笔记

一、is null 判断空值

数据库中的空值<null>

null字符串不可以用is null查询 ='null'

in 加列表可查询多个 国家

sql 复制代码
select name,population 
from world where name in ('sweden','norway','denmark')

这种写法等同于用in加列表的形式,in的多条件逻辑等同于or ,满足其中一个条件即可

IN操作符的作用

IN操作符在SQL中用于匹配括号内指定的任意一个值。当使用IN操作符时,如果字段值与括号内的任何一个值匹配,该行就会被包含在结果集中。IN操作符可以简化多个OR条件的组合查询。
模糊条件查询:

%出现任意字符

_出现一次

1.以C开头且以ia结尾(中间的值均不重要)

2.只要第二个字符为t的国家(选用_占位)

3.被两个o中间隔开

知识点:1.指定几个字符时使用几个通配符_来代替要求的字符数,没有指定字符数时使用通配符% 2.like后的字符和通配符的组合表达式需要用 英文单引号 ''包裹


多条件查询:

SQL 查询语句解析

SQL 查询从 world 表中选择符合特定条件的国家名称 (name) 和面积 (area)。查询条件由多个逻辑运算符组合而成。

查询条件分解

WHERE 子句包含两个主要部分,通过 OR 连接:

  1. 第一部分 (name LIKE '%a%a%a%' AND area > 600000)

    • 查找名称中包含至少三个字母 "a" 的国家
    • 同时面积必须大于 600,000 平方公里
  2. 第二部分 (population > 130000000 AND area > 5000000)

    • 查找人口超过 1.3 亿的国家
    • 同时面积必须超过 5,000,000 平方公里

关键知识点

LIKE 操作符
% 是通配符,表示任意数量的任意字符。'%a%a%a%' 匹配包含至少三个 "a" 的字符串,无论它们出现在什么位置。

逻辑运算符优先级
AND 优先级高于 OR。查询等效于:
(name LIKE '%a%a%a%' AND area > 600000) OR (population > 130000000 AND area > 5000000)

数值比较

使用 > 比较数值大小,注意单位一致性(这里面积和人口的单位应与表定义一致)。

查询结果特征

结果将包括:

  • 所有名称含三个 "a" 且面积大于 60 万平方公里的国家
  • 或人口超 1.3 亿且面积超 500 万平方公里的国家
  • 只返回名称和面积两列

边界值可以用!=来处理

例如:population > 130000000 AND area > 5000000 and area != 50000000

例题:查找诺贝尔奖中在1980年非chemistry和medicine的信息

相关推荐
Wx-bishekaifayuan12 小时前
springboot房屋租赁系统11574-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·sql·spring·课程设计
ao-weilai12 小时前
MySQL数据库:MySQL基础概要
数据库·mysql
雪碧聊技术12 小时前
从 0 跑通一个最小 RAG Demo:文档切分、向量检索与答案生成
数据库·oracle
喜欢的名字被抢了12 小时前
08-Redis 性能优化篇:快在哪、BigKey、HotKey、慢查询与内存
数据库·redis·性能优化
阳光九叶草LXGZXJ13 小时前
达梦数据库-学习-68-dmasm0X_XXXXXX.log日志激增
linux·运维·数据库·sql·学习
Mortalbreeze13 小时前
MySQL 基础篇(三):一文掌握 MySQL 常见数据类型
linux·服务器·数据库·mysql
青山木13 小时前
秒杀系统设计(一):需求拆解与流量治理
java·数据库·redis·后端·架构
lusklusklusk13 小时前
Oracle数据库基础之8_闪回
数据库·oracle
lusklusklusk13 小时前
Oracle数据库基础之10_性能优化
数据库·oracle·性能优化
Omics Pro13 小时前
预测性虚拟细胞中显式机理算子
大数据·数据库·人工智能·python·算法·机器学习·自然语言处理