SELECT查询组合使用的关键字很多,首先将最简单常用的关键字进行区分及使用,后续再继续补充............

以下所有的关键字组合使用,主要以两个表studentsstudents_score为主,进行练习

    

(1)join:主要分为以下几种

    join:

    inner join(内连接或等值连接):取出两个表中存在连接匹配的记录表

    right join(右连接):取得右表的全部记录,已右表为准

    left join(左连接): 与right join相反

  说明:1、mysql不支持Full join

       2、已左连接为主,如果左表中的数据右表中也存在,则以左表为主显示数据,  2、已右连接为主,如果右表中的数据,左表中无,则以null填充

1) select sc.name,sc.math_score,s.name from students_score sc INNER JOIN students s on s.id = sc.id ;
2)select sc.name,sc.math_score,s.name from students_score sc  JOIN students s on s.id = sc.id ;
3)select sc.name,sc.math_score,s.name from students_score sc left JOIN students s on s.id = sc.id ;
4)select sc.name,sc.math_score,s.name from students_score sc right JOIN students s on s.id = sc.id ;
5)(select sc.name from students_score sc  right JOIN students s on s.id = sc.id)  union (select s.name from students s  left JOIN students_score sc on s.id = sc.id ); #

(2)limit:  强制select语句返回指定的记录数,支持1个或者2个数字(必为正整数)参数

SELECT * FROM students LIMIT ,;      #第一个数字代表着从第几个开始(如:3,代表着从3开始,但是不包含3),第二个数字代表着显示几个
SELECT * FROM students LIMIT 1;        #返回一条记录
示例:select id,tel from students where tel = '18392868125' limit ;    #拉出一条tel为18392868125的数据

(3)group by分组功能

SELECT sex as '性别',avg(age) as '平均年龄' FROM students group by sex ORDER BY age desc;    #根据性别显示平均年龄,并且按降序排列

    对表students做的分组查询,运行结果显示如下:

    

(4)order by:排序

  通过某些字段进行排序,order by后面跟上排序字段,可以跟多个字段,每个字段之间用逗号隔开,如果语句中有where子句,则order by必须放在where后,order by默认的排序是升序(ASC),降序使用(DESC)

select id,math_score from students_score ORDER BY math_score desc;   #降序排列,默认升序,如需添加升序则用关键字“ASC”

         

(5)in允许在where字句中规定多个值

select * FROM students where id in(,,,);  #取出ID为2,3,5,6的所有信息

(6)between....and......:取出某一区间的值

select * from students where id between  and ;

in  与  between....and......的区别:in后面跟的是集合,between后面跟的是一个区间

(7)not: 不在什么中

select * from students where id not in(,,,);

(8)distinct 去掉重复的数值

select distinct tel from students;  #拉出tel列去重数据,拉出tel列电话号码不重的数据

    

(9)union,连接两个表的查询结果

    union all: union:会去掉重复的行。union all不去掉重复的行

(select id,math_score from students_score) UNION (select id,english_score from students_score);
(select id,math_score from students_score) UNION all (select id,english_score from students_score);

   

MYSQL—— 基础入门,select 查询涉及到的关键字组合详解(进阶篇)的更多相关文章

  1. MySQL执行SHOW STATUS查询服务器状态状态之Handler_read_* 详解

    在MySQL里,我们一般使用SHOW STATUS查询服务器状态,语法一般来说如下: SHOW [GLOBAL | SESSION] STATUS [LIKE ‘pattern’ | WHERE ex ...

  2. Java基础入门 - 三种注释及文档注释详解

    类似C/C++,Java也支持单行和多行注释 注释中的字符在编译时会被忽略 注释通常为类.变量和方法的主要描述 单行注释 // 注释内容 多行注释 /* 注释内容 */ /* * 注释内容 */ 文档 ...

  3. mysql 基础入门 单表查询

    单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...

  4. 【转载】20分钟MySQL基础入门

    原文:20分钟MySQL基础入门 这里持续更新修正 开始使用 MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格 ...

  5. MySQL基础入门(1)

    MySQL基础入门(1) 为什么学习MySQL 关系数据库管理系统(Relational Database Management System, RDBMS)是一种极为重要的工具,其应用十分广泛,从商 ...

  6. sql判断以逗号分隔的字符串中是否包含某个字符串--------MYSQL中利用select查询某字段中包含以逗号分隔的字符串的记录方法

    sql判断以逗号分隔的字符串中是否包含某个字符串---------------https://blog.csdn.net/wttykj/article/details/78520933 MYSQL中利 ...

  7. 1、mysql基础入门(1)

    1.mysql基础入门: 1.1.数据库介绍:

  8. vue2.x版本中computed和watch的使用入门详解-computed篇

    前言 在基于vue框架的前端项目开发过程中,只要涉及到稍微复杂一点的业务,我们都会用到computed计算属性这个钩子函数,可以用于一些状态的结合处理和缓存的操作. 基础使用 在computed中,声 ...

  9. mysql用户授权、数据库权限管理、sql语法详解

    mysql用户授权.数据库权限管理.sql语法详解 —— NiceCui 某个数据库所有的权限 ALL 后面+ PRIVILEGES SQL 某个数据库 特定的权限SQL mysql 授权语法 SQL ...

随机推荐

  1. Android反编译和再打包神器:Apktool

    首先推荐一下这东东,官网:https://ibotpeaches.github.io/Apktool/ 安装.使用之类的看官方文档吧,写这个博客主要是mark一下这东西. 这玩意只能供打包党来用,要想 ...

  2. HDU-5706

    GirlCat Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Problem Desc ...

  3. UML小白入门基础教程

    面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™,统一建模语言),这篇课程的目的 ...

  4. 人脸检测? 对Python来说太简单, 调用dlib包就可以完成

    "Dlib 是一个现代化的 C ++ 工具包,包含用于创建复杂软件的机器学习算法和工具 " .它使您能够直接在 Python 中运行许多任务,其中一个例子就是人脸检测. 安装 dl ...

  5. CSS学习笔记三:自定义单选框,复选框,开关

    一点一点学习CCS,这次学习了如何自定义单选框,复选框以及开关. 一.单选框 1.先写好body里面的样式,先写几个框 <body> <div class="radio-1 ...

  6. 一个能拖动,能调整大小,能更新bind值的vue指令-vuedragx

    一. 背景说明 开发一个可自定义组件化门户配置页面,期间采用了vue框架作为前端视图引擎,作为一个刚入手vue的萌新,开发第一个功能就遇到了拦路虎.需要一个拖动并且可改变大小的容器盒子.当时查看vue ...

  7. token 防止csrf

    转自:ttps://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/#icomments 当前防御 CSRF 的几种策略 验证 HTTP Ref ...

  8. 最好的营销是“调情”

    每一个精彩的营销案例都应该像一个精彩的故事,而故事最精彩的讲述方式就是设置一个开放的结局,把解读和诠释的权利留给读者和观众.宣讲.洗脑式的营销时代已经终结,就像单相思的深情表白永远不如两情相悦的彼此挑 ...

  9. Netty中如何序列化数据

    JDK提供了ObjectOutputStream和ObjectInputStream,用于通过网络对POJO的基本数据类型和图进行序列化和反序列化.该API并不复杂,而且可以被应用于任何实现了java ...

  10. 通俗的讲法理解spring的事务实现原理

    拿房屋买卖举例,流程:销售房屋 -- 接待员 -- 销售员 -- 财务 售楼处 存放着所有待售和已售的房屋数据(数据源 datasource) 总经理 带领一套自己的班底,下属员工都听自己的,服务于售 ...