数据库:数据查询(指定的列、全部列、经过计算的值、消除重复的行、查询满足条件的元组、比较查询、范围查询、集合查询、字符匹配查询)
数据查询是数据库的核心操作,SQL提供了 select 语句实现查询功能
1、查询指定的列
格式:
select 查询列表,查询列表 from 查询的表名
2、查询全部列(查询的顺序不同)
(1) select 所有的列都列出 from 查询的表名
(2) select * 查询的表名
3、查询经过计算的值(可以是表中的属性列,算术表达式,字符串常量,函数)
select 进行相应的运算方法 from 查询的表名
查询结果的列名,如果查询对应的是基本表列名,结果表该列也是列名,如果是其它表达式,SQL Server则处理为 “ 无列名 ”。
查询表的结果可以指定列名:
select 列(运算表达式)+ 空格(或 as ) +结果表的列名 from 查询的表名
选择表中的若干元组
从行方向查询,关系代数中的选择运算
1、消除重复的行
经过投影运算后,原来不相同的元组可能变成相同了,可以用 distinct 取消重复行,即只保留一行
语法:
select distinct 需要查询的列 from 查询的表名
2、查询满足条件的元组
通过where 子句实现,where(关键字)+ 条件表达式 ,常用的查询条件及谓词,如下表:
查询条件 | 谓词 |
比较 |
=(等于) >(大于)、>=(大于等于) <(小于)、<=(小于等于) !=(不等于)、<>(不等于国际通用的) !>(不大于)、!<(不小于): not+ (逻辑非)+ 上述比较运算符 |
确定范围 |
not(逻辑非)+ between 起始范围 and 结束范围 (闭区间,包括端点值) |
确定集合 |
in + 集合(前面的值在这个集合里就是逻辑真) not in |
字符匹配 |
like + 模式 (查询的表达式与查询的模式相匹配就是真,否则为假) not like |
空值 | is null (不能使用=)、 is not null |
逻辑运算 | and (与)、 or (或)、not (非) |
(1)比较查询
语法:(【】代表可省略)
【not】字段表达式 + 比较运算符 +表达式 当运算结果为真时,相应的记录就加入结果集、
例:查询计算机科学系全体学生的姓名
select sname from student where sdept = ' CS '(注意:字符串需要加单引号定界)
例:
查询所有年龄在20岁以下的男同学姓名及其年龄
select sname ,sage from student where sage <20 and ssex = ’ 男 ‘
(注意数值不需要单引号定界,还有单引号定界时注意界内空格)
(3)范围查询:
范围查询指查找属性值在(或不在)指定范围内的元组,具体格式:
【not】beteen exp1 and exp2 (等价于:属性列x>=exp1 and 属性列 x<=exp2)
例:查询年龄在20~23岁(包括20、23)之间的姓名和年龄
select sname, sage from student where beteen 20 and 23
(4)集合查询:
查找属性值属于或不属于指定集合的怨怒。
语法:
字段表达式【not 】in (集合元素列表)
例:查询信息系(‘is’)、数学系(ma)和计算机系(‘cs’)的姓名和性别:
select sname, sex from student where sdept in ( ' is ' , ' ma ' , ' cs ')
查询不是信息系(‘is’)、数学系(ma)和计算机系(‘cs’)的姓名和性别:
select sname, sex from student where sdept not in ( ' is ' , ' ma ' , ' cs ')
(5)字符匹配查询:
谓词like 可以用来进行字符的匹配查询。
语法:
match_expression 【not】like pattern
作用是查找指定的属性列与pattern相匹配的元组。
pattern ( 模式 )可以是字符串也可以是含有通配符%和 _ ,
其中:
%代表任意长度(长度可以为 0 ) 的字符串。
_ 代表任意单个字符
当字符串包含通配符时,需要使用 escape ' <换码字符> '进行转义(有点类似重新定义 _ )
例子:
查询姓刘学生的姓名、学号和性别
select sname, sno , sex from student where like ' 刘%'
查询两个字,姓刘学生的姓名、学号和性别
select sname, sno , sex from student where like ' 刘_'
查询以 ‘ DB ’ 开头,且倒数第三个字符为 i 的课程的详细情况
查询左右姓刘学生的姓名、学号和性别
select * from course where cname like ' DB\_%i__'escape ' \ '
换码字符(转意字符)‘ \ ’ ,表明其后面的一个字符是普通字符而不是通配符。换码符可以任意
数据库:数据查询(指定的列、全部列、经过计算的值、消除重复的行、查询满足条件的元组、比较查询、范围查询、集合查询、字符匹配查询)相关推荐
- mysql like带字符串_(转)MySQL数据表中带LIKE的字符匹配查询
MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的字符串相匹配,则符合查询条件,该记录将被查询出来. 如果与指定的字符串不匹配,则不符合查询条件. ...
- mysql中的字符匹配查询
1.like的字符匹配 (1)%百分号通配符,匹配任意长度的字符,包括零字符 (2)_下划线通配符,只匹配一个字符 2.正则表达式查询REGEXP 选项 说明 例子 示例 ^ 匹配文本的开始字符 ...
- 使用express搭建服务器获取MySQL数据库数据
一.原始的mysql查询方法 先安装mysql cnpm install mysql --save 引入这个db.js之后,才能对数据库进行查询 进行查询 查询结果如下: 二.ORM 介绍 ORM 全 ...
- 达梦数据库恢复到指定时间点
数据库备份是 DBA 日常最重要的工作内容.备份的主要目的是数据容灾,保证数据的安全性,在数据库发生故障时,通过还原备份集,将数据恢复到可用状态. 如果能将数据库恢复到指定节点,可以有效的避免人多人工 ...
- mysql查阅某个日期的语句_mysql查询指定日期时间内的sql语句及原理
查询指定日期时间内的sql语句的实现原理: 如果是月份就是当前的月减去你要统计的时间,比如要查询数据库中从今天起往前三个月的所有记录. 另外,在数据库设计阶段,要注意时间字段为int(11),保存在数 ...
- c mysql查询年月日_mysql查询指定日期时间内的sql语句及原理
查询指定日期时间内的sql语句的实现原理: 如果是月份就是当前的月减去你要统计的时间,比如要查询数据库中从今天起往前三个月的所有记录. 另外,在数据库设计阶段,要注意时间字段为int(11),保存在数 ...
- MySQL 学习笔记(1)— 创建/连接/选择/显示数据库(表) 查询单列(多列/所有列)/查询返回特定的行数 各种排序(单列/多列/降序/组合排序) 过滤数据
本文是对之前学习 MySQL 的一个总结,使用思维导图的方式将涉及到的知识点罗列出来,一方面作为自己对于知识点的归纳,另一方面也便于日后查询. 在该篇文章中将对 MySQL 的基本使用.检索基本数据. ...
- mysql 查询指定字段数据_MySQL使用select语句查询指定表中指定列(字段)的数据
本文介绍mysql数据库中执行select查询语句,查询指定列的数据,即指定字段的数据. 再来回顾一下sql语句中的select语句的语法: select 语句的基本语法: select from w ...
- mysql select 指定列_MySQL使用select语句查询指定表中指定列(字段)的数据
本文介绍mysql数据库中执行select查询语句,查询指定列的数据,即指定字段的数据. 再来回顾一下sql语句中的select语句的语法: select 语句的基本语法: select from w ...
最新文章
- 微服务网关Gateway-PrefixPath讲解
- Apache引起的wampserver安装好第二次使用无法启动问题
- [剑指offer]面试题34:丑数
- jzoj5057-[GDSOI2017模拟4.13]炮塔【网络流,最大权闭合图】
- 写给工程师的10条精进原则
- [Quatsch]Quantum Or Optics
- log4jdbc mysql_[简单]log4jdbc-log4j2配置简记_MySQL
- 网约代收垃圾App火了!别笑,垃圾分类下一个就到你了
- 关于jsp页面下,重置选择框的数据的操作!
- 【网站开发必备】——12款响应式 Lightbox(灯箱)效果插件
- i219v微星 驱动_intel英特尔网卡驱动下载-intel英特尔i217/i218/i219系列网卡驱动电脑版 - 极光下载站...
- 两个小米路由器mini无线桥接
- 数据归档方案(带流程图)
- 一切成功源于积累——20140928 认识货币——加元
- 四年级计算机教学总结,四年级信息技术教学工作总结
- 基于GUI混沌系统图像加密解密
- android动态贴纸实现原理,人脸动态贴纸sdk算法详解,人脸动态贴纸功能如何实现...
- 注入winlogon
- CA—Certificate Authority证书授权中心
- 甲方和乙方怎么区别?