一、数据管理

1、增加数据

INSERT INTO student VALUES(1,'张三','男',20);
-- 插入所有字段。一定依次按顺序插入
-- 注意不能少或多字段值

如只需要插入部分字段

INSERT INTO student(id,NAME) VALUES(2,'李四');
--只添加id 和NAME两列内容,也要依此按顺序

2、修改数据

UPDATE student SET gender='男' WHERE id=1;
-- 修改id为1的学生,修改性别为男

修改多个字段

UPDATE student SET gender='男',age=30 WHERE id=2;
-- 修改多个字段,注意: SET 字段名=值,字段名=值

3、删除数据

DELETE FROM student WHERE id=2;
-- 带条件的删除,删除id=2的行
DELETE FROM student;
--不带条件,删除student所有数据

另一种方式

-- delete from: 可以全表删除

1)可以带条件删除

2)只能删除表的数据,不能删除表的约束

3)使用delete from删除的数据可以回滚(事务)

-- truncate table: 可以全表删除

1)不能带条件删除

2)即可以删除表的数据,也可以删除表的约束

3)使用truncate table删除的数据不能回滚

4、查询数据

1>查询所有列

SELECT * FROM student;

2>查询指定列

SELECT id,NAME,gender FROM student;

 3>查询时添加常量

给查询字段添加常量方便观看,对原表格没有影响

SELECT pro_name AS '产品名称',price FROM product;
--原显示pro_name 和price,现在换成:产品名称 和 price

 4>查询时合并列

合并列只能合并相同类型且是数值类型的字段

SELECT sname,(servlet+jsp+html) AS '总成绩'FROM student;

5>查询时去除重复记录

-- 需求: 查询学生的性别     男 女
SELECT DISTINCT sex FROM student;
-- 另一种语法(是否有括号没有区别)
SELECT DISTINCT(sex) FROM student;

 6>条件查询

1逻辑条件: and(与)     or(或)

SELECT * FROM student WHERE id=2 AND NAME='李四'; -- 交集
SELECT * FROM student WHERE id=2 OR NAME='张三'; -- 并集

2、比较条件: >   <   >=  <=  =  <>(不等于)  between and (等价于>=  且 <=)

SELECT * FROM student WHERE jsp>=75 AND jsp<=90;
--等同于between and
SELECT * FROM student WHERE jsp BETWEEN 75 AND 90; -- (包前包后) --查询不等于男的学生
SELECT * FROM student WHERE gender<>'男';

3、判空条件

null,是空,里面没有内容

'' 是空字符串,里面有内容,内容是空字符串

is null   是空

is not null  不是空

=''    是空字符串

<>''       不是空字符串

-- 判断null
SELECT * FROM student WHERE address IS NULL ;
SELECT * FROM student WHERE address IS NOT NULL ;
-- 判断空字符串
SELECT * FROM student WHERE address='';
--查询不等于空的学生
SELECT * FROM student WHERE address<>'';

查询有地址的学生(不包括null和空字符串)

SELECT * FROM student WHERE address IS NOT NULL AND address<>'';

4、模糊条件:like

-- % : 表示任意个字符

--%在前表示前面可以有字符,%在后表示后面可以有字符

--查询含有'索尼'字符的数据
SELECT * FROM product WHERE pro_name LIKE '%索尼%';

-- _ : 表示一个字符

-- 需求: 查询姓‘李’,且姓名只有两个字的学生
SELECT * FROM student WHERE NAME LIKE '李_';

7、聚合查询

-- 常用的聚合函数: sum() 总和,   avg()  平均分, max() 最大值,  min()最小值,   count()统计数量

-- 需求: 查询学生的servlet的平均分
SELECT AVG(servlet) AS 'servlet的平均分' FROM student;
SELECT COUNT(*) FROM student;
--查询共有多少学生

-- 注意:count()函数统计的数量不包含null的数据

-- 使用count统计表的记录数,要使用不包含null值的字段

 8、分页查询

语法:limit 起始行,查询几行,起始行从0开始

SELECT * FROM student LIMIT 0,2;
-- 从第一行开始,显示两行

9、查询排序

语法 :order by 字段 asc/desc,默认顺序

-- asc: 顺序,正序。数值:递增,字母:自然顺序(a-z)

-- desc: 倒序,反序。数值:递减,字母:自然反序(z-a)

SELECT * FROM student ORDER BY id; -- 默认正序123

SELECT * FROM student ORDER BY id DESC;-- 反序321

多个排序条件

SELECT * FROM student ORDER BY servlet ASC,jsp DESC
-- 按照servlet为主顺序,正序排列,当servlet数值相同时,后面的jsp倒序排列其他的JSP不按照倒序排列

10、分组查询  (group by)

SELECT gender,COUNT(*) FROM student GROUP BY gender
--查询男女的人数

分组查询后筛选

-- 需求: 查询总人数大于2的性别
SELECT gender,COUNT(*) FROM student GROUP BY gender HAVING COUNT(*)>2;
-- 注意: 分组之前条件使用where关键字,分组之后条件使用having关键字

sql数据管理语句的更多相关文章

  1. [转]MySQL 最基本的SQL语法/语句

    MySQL 最基本的SQL语法/语句,使用mysql的朋友可以参考下.   DDL-数据定义语言(Create,Alter,Drop,DECLARE) DML-数据操纵语言(Select,Delete ...

  2. SQL入门语句之ORDER BY 和GROUP BY

    一.SQL入门语句之ORDER BY ORDER BY 是用来基于一个或多个列按升序或降序顺序排列数据 1.从数据库表获取全部数据按字段A的升序排列 select *from table_name o ...

  3. SQL入门语句之LIKE、GLOB和LIMIT

    一.SQL入门语句之LIKE LIKE用来匹配通配符指定模式的文本值.如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1.这里有两个通配符与 LIKE 运算符一起使用,百 ...

  4. SQL入门语句之SELECT和WHERE

    一.SQL入门语句之SELECT SELECT语句用于从数据库表中获取数据,结果表的形式返回数据.这些结果表也被称为结果集 1.从数据库表中取部分字段 select 字段A,字段B from tabl ...

  5. SQL入门语句之INSERT、UPDATE和DELETE

    一.SQL入门语句之INSERT insert语句的功能是向数据库的某个表中插入一个新的数据行 1.根据对应的字段插入相对应的值 insert into table_name(字段A, 字段B, 字段 ...

  6. 快速将一个表的数据生成SQL插入语句

    将一个表中的数据生成SQL插入语句,方便系统快速初始化,在数据库中执行创建以下过程就可以了. ) Drop Procedure GenerateData go CREATE PROCEDURE Gen ...

  7. sql查询语句如何解析成分页查询?

    我们公司主要mysql存储数据,因此也封装了比较好用mysql通用方法,然后,我们做大量接口,在处理分页查询接口,没有很好分查询方法.sql查询 语句如何解析成“分页查询”和“总统计”两条语句.可能, ...

  8. 规则引擎集成接口(四)SQL执行语句

    SQL执行语句 右键点击数据库连接文件“hr”—“添加SQL执行语句”,如下图: 弹出窗体,如下图: 将显示名称改为“部门名称”,返回至类型设置为“string”,在编写sql语句,如下图: 点击确定 ...

  9. SQL SELECT 语句

      本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL SELECT 语法 SE ...

随机推荐

  1. JQuery UI - draggable参数中文详细说明

    概述 在任何DOM元素启用拖动功能.通过单击鼠标并拖动对象在窗口内的任何地方移动. 官方示例地址:http://jqueryui.com/demos/draggable/ 所有的事件回调函数都有两个参 ...

  2. webpack模块打包简易版

    webpack基本使用流程(react) 1.安装webpack脚手架 cnpm install webpack webpack-cli -D 2.安装处理css的loader cnpm instal ...

  3. spark | 手把手教你用spark进行数据预处理

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是spark专题的第七篇文章,我们一起看看spark的数据分析和处理. 过滤去重 在机器学习和数据分析当中,对于数据的了解和熟悉都是最基 ...

  4. Python优秀开源项目Rich源码解析

    这篇文章对优秀的开源项目Rich的源码进行解析,OMG,盘他.为什么建议阅读源码,有两个原因,第一,单纯学语言很难在实践中灵活应用,通过阅读源码可以看到每个知识点的运用场景,印象会更深,以后写代码的时 ...

  5. rsync+inotify 备份

    一,服务端安装(备份服务器): #安装rsync cd /usr/local/src/ wget http://rsync.samba.org/ftp/rsync/src/rsync-3.0.9.ta ...

  6. P2882 Face The Right Way G 题解

    题目 Farmer John has arranged his N \((1 ≤ N ≤ 5,000)\) cows in a row and many of them are facing forw ...

  7. 选课系统<基于面向过程\对象>

    2020-04-15 00:09:28 程序目录: import os BASE_PATH=os.path.dirname(os.path.dirname(__file__)) DB_PATH=os. ...

  8. 数据库周刊31丨openGauss 正式开源;7月数据库排行榜发布;浙江移动国产数据库AntDB迁移;oracle ADG跨版本搭建;PG解决社保问题;mysqlbinlog解析……

    摘要:墨天轮数据库周刊第31期发布啦,每周1次推送本周数据库相关热门资讯.精选文章.干货文档. 热门资讯 1.openGauss 正式开源,华为公开发布源代码[摘要]6月1日,华为正式宣布开源数据库能 ...

  9. 用python实现栈/队列/双端队列/链表

    栈是元素的有序集合,添加操作与移除操作都发生在其顶端,先进后出栈操作:创建空栈,增删(顶端),查(顶端元素,元素个数,是否为空)应用:将十进制数转换成任意进制数 class Stack: # 用列表创 ...

  10. Gradle系列之构建脚本基础

    原文发于微信公众号 jzman-blog,欢迎关注交流. 前面两篇文章分别介绍了 Gradle 基础知识以及 Groovy 相关基础知识,这也是学习 Gradle 所必需了解的,文章链接如下:: Gr ...