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 相关文章推荐
MySQL基础(一)
Apr 05 MySQL
MySQL基础(二)
Apr 05 MySQL
MySQL之PXC集群搭建的方法步骤
May 25 MySQL
MySQL 常见的数据表设计误区汇总
Jun 07 MySQL
MySQL连表查询分组去重的实现示例
Jul 01 MySQL
一条 SQL 语句执行过程
Mar 17 MySQL
详细聊一聊mysql的树形结构存储以及查询
Apr 05 MySQL
mysql 8.0.27 绿色解压版安装教程及配置方法
Apr 20 MySQL
Mysql将字符串按照指定字符分割的正确方法
May 30 MySQL
MYSQL中文乱码问题的解决方案
Jun 14 MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 MySQL
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
Aug 14 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
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
php学习之function的用法
2012/07/14 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
2014/12/15 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
2016/07/28 PHP
jquery简单实现滚动条下拉DIV固定在头部不动
2013/11/25 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
浅谈JavaScript的自动垃圾收集机制
2016/12/15 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
Angular中的$watch方法详解
2017/09/18 Javascript
深入理解Vue官方文档梳理之全局API
2017/11/22 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
js实现倒计时秒杀效果
2020/03/25 Javascript
解析Python编程中的包结构
2015/10/25 Python
python 时间戳与格式化时间的转化实现代码
2016/03/23 Python
深入理解Python分布式爬虫原理
2017/11/23 Python
virtualenv 指定 python 解释器的版本方法
2018/10/25 Python
Python实战购物车项目的实现参考
2019/02/20 Python
python反编译学习之字节码详解
2019/05/19 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
Pandas的Apply函数具体使用
2020/07/21 Python
css3中background新增的4个新的相关属性用法介绍
2013/09/26 HTML / CSS
利用css3实现的简单的鼠标悬停按钮
2014/11/04 HTML / CSS
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
自动化职业生涯规划书范文
2014/01/03 职场文书
中文教师求职信
2014/02/22 职场文书
民族学专业求职信
2014/07/28 职场文书
财务科长个人对照检查材料
2014/09/18 职场文书
学校领导四风问题整改措施思想汇报
2014/10/09 职场文书
西岭雪山导游词
2015/02/06 职场文书
2015年大学班长个人工作总结
2015/04/24 职场文书
英语教学课后反思
2016/02/15 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python
JS前端使用canvas实现物体的点选示例
2022/08/05 Javascript