最近接触sql比较多,发现自己已经遗忘的也差不多,要用到的时候迟迟拿不出来,今天开始会在知乎上纪录一些sql语句学习的内容,内容重在说明查询语句的用法。

一、sql查询语句的初始介绍

1、查询语句的一般写法:select .......from ......where ...... group by ......having ...... order by ...... limit ...... ;

2、执行顺序:①from ② where ③ group by ④ select ⑤ having ⑥ order by ⑦ limit ,对于执行顺序一般来说用处不大,但是遇到需求复杂的sql时,可以给你一种很好的解题思路。

二、常用关键字

1、group by 分组

按照字段进行分组,这里有一个需要注意的小问题,除了分组字段之外,取分组后的每一组的第一行作为标识。举个简单的例子:

可以看到,不是分组字段取第一行做标识,其他行都被丢弃掉了。

当进行多列分组时,当且仅当多列的值相同时,才会被分到一组。

2、聚合函数

① count 计数 ②sum 求和 ③ max 最大值 ④ min 最小值 ⑤ avg 平均值 。当然这不是全部,只是列举了一些常用的,这里主要讲解count。

count()聚合函数括号中可以存放的值。

① count(字段): 纪录null值,即表示满足条件的数据行里参数字段不为NULL的行

② count(1或*):不记录null值

③ distinct 字段: 去重

数据库执行效率(由高到低):* > 1 > 主键 > 普通字段

3、having 过滤关键字

where同样也是过滤关键字,他们的不同在于,having作用于组,筛选分组之后的纪录,having条件中可以包含聚合函数;而where作用于表,筛选聚合前的纪录,where条件中不能包含聚合函数。

4、order by 排序关键字

asc 升序(默认),desc 降序。当按照两列或者两列以上的列数进行排序时,在第一列排序结束后的基础上,对于第一排序列相同值的行,按照第二排序列进行排序,多列情况亦是以此类推。

5、limt a,b

从a行开始取值,要取出的行数为b行。需要注意的是,数据表的行数下标从0开始。

6、left join 左连接(也称左外连接)

语法:table1 left join table2 on 过滤条件

以左表为基准,右表无匹配行时,只显示左表数据,右表显示为null。

7、inner join 内连接

只显示两边都匹配的行,有两种写法,效果一样。

语法:①select * from table1 ,table2 where 过滤条件

②select * from table1 inner join table2 on 过滤条件

sql 数据库前两列值乘_Sql语句常用关键字相关推荐

  1. sql 数据库前两列值乘_SQL | SQL 必知必会笔记 (一 )

    原文:SQL | SQL 必知必会笔记 (一 ) 作者: PyStaData 基本概念 一些规则 多条 SQL 语句必须以分号分隔. SQL 不区分大小写,但一般习惯关键字用大写,列名和表名使用小写. ...

  2. sql 数据库前两列值乘_SQL注入原理和方法汇总

    本文首发于先知社区 前言: SQL注入是web安全中最常见的攻击方式,SQL注入有很多方法,但如果只知道payload,不知道原理,感觉也很难掌握,这次就总结一下我所遇到的SQL注入方法,原理分析+题 ...

  3. sql 数据库前两列值乘_与开发battle有点虚?小白都能看懂的数据库知识来了

    文末领取[SQL面试题及答案] 随着近几年AI智能,大数据的发展,"产品经理是是否需要懂技术?""产品经理应该对技术理解到什么程度?"诸如此类的问题又再次出现在 ...

  4. sql 数据库前两列值乘_数据库的基本概念:

    数据库的相关概念: 数据-data: 1.描述事物的符号 2.多种表现形式:文本,图形,音频,视频. 数据库-Database,DB 1.粮库,车库 2.存放数据的仓库在计算机中,按照一定的格式存放, ...

  5. sql 数据库前两列值乘_懂EXCEL就会SQL,从此查数不求人

    小白如何学习SQL语言? 大部分的文章都是先从意义原理开始讲,再讲环境搭建.还没看到怎么操作就放弃了. 大部分人学习SQL的需求是什么? 而且,大多数人的使用场景是数据库是现成的,这就不涉及数据库的安 ...

  6. pandas计算dataframe两列数据值相等的行号、取出DataFrame中两列值相等的行号

    pandas计算dataframe两列数据值相等的行号.取出DataFrame中两列值相等的行号 目录 pandas计算dataframe两列数据值相等的行号.取出DataFrame中两列值相等的行号

  7. bootstrap table 怎么实现前两列固定冻结?

    $("#Table").bootstrapTable('destroy').bootstrapTable({pagination: true,//分页minimumCountCol ...

  8. excel冻结前两行或者冻结前两列

    1.冻结前两行 1)单元格选择第三行的第一个单元格. 2)选择冻结拆分窗格 2.冻结前两列 1)选择第3列的第一个单元格 2)选择冻结拆分窗格 3.冻结前两行和前两列 1)选择第3行和第3列的交叉的单 ...

  9. sql同时操作两列_SQL简单查询

    1. 基本的查询语句 selece<列名1>,<列名2>,.... →select子句 from<表名>: →from子句 -- 在student表中查询出姓名.性 ...

最新文章

  1. 芬兰阿尔托大学人工智能实验室程路组博士生招聘-肠道菌群进化与人类疾病等方向...
  2. OracleHelper类
  3. Instruments of Xcode
  4. Java之String、StringBuffer、StringBulider辨识
  5. 专业程序员必知必会技巧:驯服复杂代码
  6. python 中国社区_python
  7. ROS入门教程(一)
  8. 极限编程和极限编程方法采用的有效的开发实践
  9. html在线直播ppt,PPT在HTML网页上播放方法
  10. @@@Blog总目录@@@
  11. CF374C Inna and Dima 题解
  12. 「面向对象程序设计-C++」学习笔记(下半部分)
  13. MDK/Kile软件生成不了hex文件
  14. 玩个游戏好难 Win10我的世界(Minecraft)下载
  15. android相册幻灯片功能,玩机教程 篇四十五:「MIUI玩机技巧63」MIUI相册新增“幻灯片播放”功能...
  16. 目前流行的计算机配置有哪些,2019最流行电脑配置
  17. 小技巧:如何创建公共邮箱?教育邮箱创建哪个好?
  18. Linux 开机自启动
  19. Python中字符串截取
  20. 应该去看看的十大论坛!!!

热门文章

  1. Linux 用户(user)和用户组(group)管理概述
  2. 日语python怎么说_python+Mecab,一次性学会日语分词
  3. java大组件_Java的三大组件
  4. php批量生成html文件,php 批量生成html、txt文件
  5. 深度学习之基于卷积神经网络实现花朵识别
  6. 洛谷3384(树链剖分模板题)
  7. python关闭线程daemon_python中threading开启关闭线程操作
  8. 【计算机网络】协议,接口,服务
  9. linux统计某个目录大小,Linux下统计某个目录的文件个数(转)
  10. cpu开核_电脑魔改篇——CPU散热器