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

5 日期范围查询_SQL 之 简单查询

70236f7ef41b113400f36d0991fce68f.png

学习目标

1.基本的查询语句

2.指定查询条件

3.注释和SQL语句注意事项

4.运算符

5.字符串模糊查询


一. 基本的查询语句

我们通过向数据库发送SQL查询语句,数据库里运行SQL语句,将查询结果返回。

最基本的查询语句包括两个子句:SELECT子句FROM子句

子句是SQL语句的组成要素,是五个以关键字作为开始的语句。

  • 从student表中查找姓名,学号两列数据
SELECT 姓名, 学号 FROM student;

a1434bff41dce3fe8e152c528873d863.png
注:查询结果中列的顺序和SELECT子句中列的顺序一致
  • 查询student表里全部列(*)
SELECT * FROM student;

14f7387e6da9e5fded655dc211058108.png
  • 删除重复数据:在SELECT子句的列名前添加DISTINCT
SELECT DISTINCT 姓名 FROM student;

b398df933722fc4dbb50afdf24e62e86.png
注:列名不能加单引号,有特殊含义,不是字符串
SELECT DISTINCT 姓名, 学号 FROM student;

fc421275fb8e946c2f2645642bee46da.png
注:联合考虑姓名和学号的重复性
  • 使用AS为列设置别名,别名可以让SELECT语句更加容易理解和操作。
SELECT 姓名 AS '学生姓名', 学号 AS '学生学号' FROM student;

1e7981bf664da4b37eede1d0fdd45007.png
注:中文别名需要使用' '

二. 指定查询条件

查询语句通过WHERE子句来指定查找条件:

SELECT *
FROM student
WHERE 姓名 = '猴子'; /* 查询条件的表达式 */

ef350cc5315eb7166014df2709d3c644.png

SQL子句的书写顺序和SQL的运行顺序不同

31696e818c6b1f613f689502f72615b3.png

SQL运行顺序:SELECT子句最后运行,其他子句按书写顺序运行。


三. 注释sql语句

注释能够帮助阅读者更好的理解SQL语句,特别是书写复杂SQL语句。

单行注释

-- 查询出全部列
SELECT * FROM student;

多行注释

/*
查找姓名是猴子学生
的学号
*/
SELECT 学号 FROM student WHERE 姓名 = '猴子';

四. 运算符

算数运算符

加法:+

减法: -

乘法: *

除法:/

SELECT 学号,成绩,
成绩/100 AS '百分比成绩'
FROM score;

0a40297584b08a2244ef832482d2400e.png
注:含有NULL的运算,结果还是NULL

比较运算符

相等:=

不等于 :<>

大于 : >

大于等于: >=

小于: <

小于等于: <=

空值: IS NULL

-- 数值比较
SELECT 学号, 成绩
FROM score
WHERE 成绩 > 60;

9a50fe6d33795ee682336f5876899e3b.png
-- 日期比较
SELECT 姓名, 出生日期
FROM student
WHERE 出生日期 < '1990-01-01';

cad55a93185c5a8717eede8c598bb8c5.png
-- 如何查询出 NULL 值?
SELECT 教师号, 教师姓名
FROM teacher
WHERE 教师姓名 IS NULL

18b5f8163be1268c8cb29368b5c93c04.png

补充:字符串比较

'10' > '2'

逻辑运算符

NOT:否定某一条件

AND:并且

BETWEEN:范围查询

OR:或者

IN:OR的简单写法

NOT(一般不使用)

SELECT 学号, 成绩
FROM score
WHERE NOT 成绩 >= 80;

SELECT 学号, 成绩
FROM score
WHERE 成绩 < 80;

e7518c8e51e59ac6fadeac318755fc37.png
注:两条语句查询结果一致

AND

SELECT 学号, 成绩
FROM score
WHERE 成绩>=60 
AND 成绩<=90;

7dd0d3d17d1ef694b991ee0e7cc4da6a.png

BETWEEN

SELECT 学号, 成绩
FROM score
WHERE 成绩 >= 60 
AND 成绩 <= 90;

SELECT 学号, 成绩
FROM score
WHERE 成绩 BETWEEN 60 AND 90;

224ae14e7e0f0aeb33652ce6ee4f2daf.png
注:BETWEEN运算符会查找包括两个边界的值

IN

SELECT 姓名, 性别
FROM student
WHERE 姓名 IN ('猴子', '马云');

4b013ca22236663b4fd8f32ed28ed06e.png
SELECT 姓名, 性别
FROM student
WHERE 姓名 NOT IN ('猴子', '马云');

1af31b24928c9b1ff35f318f1507d6f8.png

五. 字符串模糊查询

字符串模糊查询:LIKE e.g. 搜索引擎搜索关键词

%表示任意字符串:

1.猴%

-- 查询姓猴的学生名单    
SELECT *     
FROM student    
WHERE 姓名 LIKE '猴%'; 

3e2819b8a666dd90fedac9d8a7493d59.png

2.%猴

-- 查询姓名中最后一个字是聪的学生名单    
SELECT *     
FROM student    
WHERE 姓名 LIKE '%聪';

8a714e89085e8dc247d710acfbe488f3.png

3.%猴%

-- 查询姓名中带猴的学生名单    
SELECT *     
FROM student    
WHERE 姓名 LIKE '%马%';

a4d73e72b187e9d5daa690b6a8373f43.png

_一个下划线表示任意1个字符

-- 查询姓王的学生名单,并且姓名是三个字的
SELECT * 
FROM student
WHERE 姓名 LIKE '王__';

e6f66740b51dbba75cd0b50d42d03746.png

ad1c0dcc735bc5b9e44c97b7f1d6618d.png

相关文章:

  • 线段测量_CAD看图软件技巧:一分钟学会CAD多线段测量
  • python格式字符_相当实用的Python格式字符串,格式化
  • htmlcss项目实战源码_基于TensorFlow深度学习人脸识别源码级项目实战
  • com口测试好坏_用modscan测试modbus协议离散仪表数据方法
  • mysql 统计连续重复值_mysql统计某列值连续出现次数小于五次的记录
  • mysql视图代码_MySQL视图简介与操作的介绍(附代码)
  • mysql密码存储过程_mysql设置用户名密码,存储过程,触发器
  • sqlserver mysql 乱码_SqlServer数据库中文乱码问题解决
  • oracle与mysql跨库连接_PostgreSQL+Oracle跨库连接实操
  • php mysql 域名空间_域名空间pipni.cz申请和使用攻略(MYSQL+PHP+CGI+mail+FTP)
  • mysql条件删除表中某些行数据_根据MySQL中的条件仅删除表中的某些行
  • mysql pdo rowcount_PDO rowCount()在MySQL上有效,但在SQL Server 2008 R...
  • mysql+数据库索引策略_mysql数据库索引
  • 企业组织架构mysql_[MySQL] 数据目录的组织架构
  • matlab一维搜索_工程优化设计与Matlab实现——一维搜索方法(黄金分割法)
  • 30天自制操作系统-2
  • 5、React组件事件详解
  • echarts花样作死的坑
  • github从入门到放弃(1)
  • httpie使用详解
  • JavaScript 基础知识 - 入门篇(一)
  • JavaScript中的对象个人分享
  • java概述
  • JS数组方法汇总
  • js正则,这点儿就够用了
  • Netty源码解析1-Buffer
  • SOFAMosn配置模型
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 将 Measurements 和 Units 应用到物理学
  • 前端面试题总结
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #13 yum、编译安装与sed命令的使用
  • (1)(1.13) SiK无线电高级配置(六)
  • (1)SpringCloud 整合Python
  • (13):Silverlight 2 数据与通信之WebRequest
  • (arch)linux 转换文件编码格式
  • (Java数据结构)ArrayList
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (七)Knockout 创建自定义绑定
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • .net 获取url的方法
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • ?php echo $logosrc[0];?,如何在一行中显示logo和标题?
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思
  • @EnableConfigurationProperties注解使用
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [2015][note]基于薄向列液晶层的可调谐THz fishnet超材料快速开关——
  • [20190416]完善shared latch测试脚本2.txt