SQL基础的查询语句


Posted in MySQL onNovember 11, 2021

SQL语句中,查询是使用最多的操作,SQL不仅能够查询表中的数据,还可以返回算术运算、表达式的结果等,接下来就一起了解一下基本的查询语句。

一、基础SELECT语句

1、查询指定字段

语法格式:

SELECT <字段名>,... FROM <表名>;

在语句中可以指定多个字段,结果会根据指定的字段进行显示。

例如:在users用户表中查询用户id、用户名、昵称、性别信息:

SELECT user_id,user_name,nick_name,sex FROM users;

2、查询全部字段

查看表中的全部字段可以使用星号"*"表示,例如,以下语句查询users用户表中的所有数据:

SELECT * FROM users;

"*"代表所有字段,数据库在解析该语句时,会使用表中的字段名进行扩展,根据实际情况将"*"换成user_iduser_namenick_namesexmobileemail等表的字段。

3、设定别名

使用AS关键字可以为列设定别名。

SELECT user_id AS id,user_name AS 用户名称,nick_name AS 昵称,sex AS 性别 FROM users;

4、常数的查询

SELECT语句中不仅可以书写列名,而且还可以书写常数,

如下:

SELECT 100;
SELECT '用户';

5、表达式的查询

SELECT 98%100;

6、去重

SELECT语句中可以使用DISTINCT关键字去除查询结果中的重复记录,例如,去除user_name重复的数据:

SELECT DISTINCT user_name FROM users;

注意: DISTINCT对NULL是不进行过滤的,即返回的结果中是包含NULL值的;

DISTINCT应用到多列的时候,应用范围是其后面跟的所有字段,而且DISTINCT只能放到所有字段的前面,也就是第一个列名之前。

SELECT DISTINCT user_name,nick_name FROM users;

7、条件查询

SELECT语句通过WHERE子句来查询符合指定条件的记录,WHERE子句要紧跟在FROM子句之后。

SELECT <字段名>,... FROM <表名> WHERE <条件表达式>;

7.1 单条件查询

查询性别为男性的用户:

SELECT * FROM users WHERE sex='男';

查询年龄小于等于24的用户:

SELECT * FROM users WHERE age<=24;

查询用户id不是3的用户:

SELECT * FROM users WHERE NOT user_id=3;

在第3个例子中使用了NOT运算符,在条件前加NOT就代表否定这个条件,查找这个条件以外的记录。

7.2 多条件查询

查询年龄小于等于24或者性别为男性的用户:

SELECT * FROM users WHERE age<=24 OR sex='男';

查询年龄小于等于24并且性别为男性的用户:

SELECT * FROM users WHERE age<=24 AND sex='男';

上面使用了多条件查询,条件能同时成立AND运算符,条件只能成立一个用OR运算符。

7.3 指定范围查询

查询用户id在(2,3,7,8)范围内的用户:

SELECT * FROM users WHERE user_id IN (2,3,7,8);

IN在WHERE子句中规定多个值,IN后跟圆括号,括弧内可以有一个或多个值,值之间由逗点分开,值可以是数字或者字符。

查询用户id在10-15之间的用户:

SELECT * FROM users WHERE user_id BETWEEN 10 AND 15;

BETWEEN ... AND指定介于两个值之间的数据范围,这些值可以是数值、文本或者日期。

7.4 模糊查询

LIKE关键字用于SQL的模糊查询,用于对搜索字符串进行模式匹配。

语法格式:

字段名 LIKE pattern

匹配模式:

  • %:百分号匹配零个、一个或多个字符
  • -:下划线符号匹配单个字符
模式 含义
LIKE 'a%' 匹配以A开始的字符串,如abc、ab
LIKE '%y' 匹配以y结尾的字符串,如aay、xy
LIKE '%mn% 匹配包含mn的字符串,如amnb、lmn
LIKE 'a_' 匹配以a开始,后面只有一个字符的数据,如ay、ab
LIKE '_y' 匹配以y结尾,前面只有一个字符的数据,如ay,xy
例如:

查找用户昵称包含tigeriaf的数据:

SELECT * FROM users WHERE nick_name LIKE '%tigeriaf%';

到此这篇关于SQL基础的查询语句的文章就介绍到这了,更多相关SQL基础查询语句内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
Windows10下安装MySQL8
Apr 06 MySQL
mysql的MVCC多版本并发控制的实现
Apr 14 MySQL
MySQL 角色(role)功能介绍
Apr 24 MySQL
MySQL Router的安装部署
Apr 24 MySQL
MySQL EXPLAIN输出列的详细解释
May 12 MySQL
mysql在项目中怎么选事务隔离级别
May 25 MySQL
浅谈MySQL next-key lock 加锁范围
Jun 07 MySQL
MySQL基础快速入门知识总结(附思维导图)
Sep 25 MySQL
MySQL数据库⾼可⽤HA实现小结
Jan 22 MySQL
深入讲解数据库中Decimal类型的使用以及实现方法
Feb 15 MySQL
一文搞懂MySQL索引页结构
Feb 28 MySQL
MySQL详解进行JDBC编程与增删改查方法
Jun 16 MySQL
MySQL之select、distinct、limit的使用
Nov 11 #MySQL
MySQL表类型 存储引擎 的选择
Nov 11 #MySQL
一文带你探究MySQL中的NULL
Nov 11 #MySQL
mysql函数全面总结
Nov 11 #MySQL
MYSQL 运算符总结
Nov 11 #MySQL
MySQL 数据类型详情
Nov 11 #MySQL
MYSQL 表的全面总结
Nov 11 #MySQL
You might like
简单的过滤字符串中的HTML标记
2006/12/25 PHP
谨慎使用PHP的引用原因分析
2012/09/06 PHP
Codeigniter的dom类用法实例
2015/06/26 PHP
PHP命令Command模式用法实例分析
2018/08/08 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
php intval函数用法总结
2019/04/14 PHP
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
javascript将浮点数转换成整数的三个方法
2014/06/23 Javascript
springMVC结合AjaxForm上传文件
2016/07/12 Javascript
HTML的select控件美化
2017/03/27 Javascript
JS使用插件cryptojs进行加密解密数据实例
2017/05/11 Javascript
在React中如何优雅的处理事件响应详解
2017/07/24 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
微信小程序实现的canvas合成图片功能示例
2019/05/03 Javascript
解决小程序无法触发SESSION问题
2020/02/03 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
2021/01/13 Vue.js
Python标准异常和异常处理详解
2015/02/02 Python
Python中static相关知识小结
2018/01/02 Python
Python装饰器用法实例总结
2018/05/26 Python
解决python线程卡死的问题
2019/02/18 Python
Python GUI自动化实现绕过验证码登录
2020/01/10 Python
软件生产职位结构化面试主要考察要素及面试题库
2015/06/12 面试题
法学研究生自我鉴定范文
2013/12/04 职场文书
工程负责人任命书
2014/06/06 职场文书
竞聘自述材料
2014/08/25 职场文书
2014市府办领导班子“四风问题”对照检查材料思想汇报
2014/09/24 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
手机销售员岗位职责
2015/04/11 职场文书
2015年暑假工作总结
2015/07/13 职场文书
周一给客户的问候语
2015/11/10 职场文书
新课程改革心得体会
2016/01/22 职场文书
如何用python插入独创性声明
2021/03/31 Python
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL
【DOTA2】高能暴走TK秀!PSG LGD vs ASTER - DPC 2022 WINTER TOUR CN
2022/04/02 DOTA