一、条件语句 Python中的条件语句主要是由if语句来编写,主要分为单分支结构、双分支结构、多分支结构,不同于C语言和java,Python中没有switch语法 1、if 语句 if条件判断语句,可判断当前程序执行到此处时候...,是否满足条件,如果满足则执行,不满足则跳过 print("接下来执行条件语句") a = 10 b = 100 print("定义了两个变量 a = ",a, " b = " , b) #格式 -...tips :java 和 C语言中 是 else if ,Python直接用 elif 了 ,elif 和 else if 一样可以有多个 a = 10 b = 100 if a > b :...循环是重复执行一段程序,在Python中有while 和 for 循环 两种,当满足一定条件则会进入循环中 1、while 循环 我一直理解为,当在这个条件内,一直循环 print("打印数字 1 ~...条件加一 2、for 循环 和Java与C语言格式有较大的区别,但作用也是一样的,区别于 while循环,for循环定义好了循环结束的条件. print("打印数字 0 ~ 9") # i 代表每一个可迭代数据中的元素
条件后面你的冒号的意思表示条件已经书写完成了 4. 条件成立执行的代码前面缩进4个空格的距离,这里基本不用打击手动去弄这个缩进4格,因为在PyCharm里书写代码按住换行键后自动缩进4格 5....# 返回结果是三行代码都执行到了,最后一行没有缩进4格的代码也执行了 # 问题: 最后一行代码和if条件语句优美关系呢?...,不属于if语句块,即和条件成立与否无关 print('这个代码执行吗?')...# 返回结果只打印最后一行的代码 上面代码执行结果: 图片1.png 总结:在if条件语句中,要严格按照语法来书写代码,if语句条件成立执行的代码是带有缩进4格的代码块,而没有缩进的语句块和if条件无关...下一篇用一个实例的简单版本和进阶版本来加强if条件语句的认识,更多Python基础教程可以关注我之前或者之后写的文章,几乎每天更新,很适合Python小白。
isort 是什么isort,全称是 "Import Sorting",是一个 Python 工具,用来对 Python 代码中的导入语句进行排序和格式化。...如何安装或者引入 isort在Python中,为了保持代码的整洁和有序,我们通常需要对导入的模块进行排序。isort是一个非常有用的工具,它可以帮助我们自动地完成这个任务。...isort 是一个强大的Python包,它可以帮助你自动将代码中的导入语句排序并格式化,以保持一致性和可读性。下面通过一些示例来展示 isort 的使用。...isort的应用场景isort 是一个强大的 Python 代码排序和格式化工具,能够帮助开发者自动化地按照一定规则对代码中的导入语句进行排序和格式化。...这有助于提高代码的可读性和一致性,也是遵循 PEP 8 风格指南的重要一步。1. 标准库导入排序在日常开发中,我们经常需要从 Python 的标准库中导入多个模块。
(也就是说在mysql中可以使用的函数,在其他比如oracle中有可能就不支持使用,函数是没有普通SQL语句的可移植性强.)...常见函数分类: 1.用于处理文本串(如删除或填充值,转换值为大写或小写)的文本函数. 2.用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的数值函数。...(与普通的函数最主要的区别聚集函数值返回一条结果,这当然是使用分组语句的情况下) 当我们只需要汇总数据而不用把它们实际数据检索出来时,可以使用聚集函数.在只需要返回汇总数据时,返回实际表数据是对时间和处理资源的一种浪费...这些函数是高效设计的,它们返回结果一般比你在自己的客户机应用程序中计算要快得多. 2.聚集函数的可移植性不强,取决于不同的数据库厂商和不同的版本. ①AVG()函数用法: 只用于单个列 AVG()只能用来确定特定数值列的平均值....对非数值数据使用MAX() 虽然MAX()一般用来找出最大的数值或日期值,但MySQL允许将它用来返回任意列中的最大值,包括返回文本列中的最大值。
♣ 题目部分 在Oracle中,对于一个NUMBER(1)的列,如果查询中的WHERE条件分别是大于3和大于等于4,那么这二者是否等价? ♣ 答案部分 首先对于查询结果而言,二者没有任何区别。...③ 在使用物化视图的过程中,大于3会同时扫描物化视图和原表,效率较低;而大于等于4会直接扫描物化视图,效率较高。...由此可见,在返回结果集相同的情况下,使用大于等于代替大于在某些特殊情况下可以带来SQL语句性能上的提升。总结一下,如下图所示: ?...对于后者,由于查询的条件违反了CHECK约束,因此Oracle在执行计划前面增加了一个FILTER,使得整个查询不需要在执行,因此这个查询不管表中数据有多少,都会在瞬间结束。...而对于大于3这种情况,虽然根据CHECK的约束和列定义,可以推断出这条查询不会返回任何记录,但是Oracle的优化器并没有聪明到根据列的精度来进行分析,因此这个查询会执行全表扫描。
这篇笔记,我将整理近一个月的实战中最常用到的 mysql 语句,同时也将涉及到如何在python3中与 mysql 实现数据交换。...2、在 python 脚本中,我采用 pymysql 和 sqlalchemy 这两个库与 mysql 建立连接,用 pandas 来处理数据。...我在最初一个月的实践中,最常出现的错误有: 值的引用没有加上引号; 符号错乱:多一个符号,少一个符号; 值的类型不符合:不管 mysql 表格中该值是数,还是文本,在定义 sql 语句的字符串时,对每个值都需要转化为字符串...其基本语句为: DELETE FROM table_name【条件】; 想要修改特定范围,就要用到条件表达式,这和前面的查询部分也是一致的,稍微啰嗦两句:不要对自己设定的条件太自信,最好先用搜索语句检查一下...想要删除整张表格,什么都不留下,则执行: DELETE TABLE table_name; 俗称的“删库”就是删掉整个数据库,虽然实战中几乎不会用到,但作为新手经常手误,在练习阶段安全起见,最好还是专门创建一个
一、SQL 语句分类 SQL语句有很多,我们最好分门别类,这样容易记忆… 1.DQL(数据查询语言) 数据查询语言(Data Query Language, DQL)是SQL语言中,负责进行数据查询而不会对数据本身进行修改的语句...任何 表 都有行和列 行(row): 被称为数据/ 记录 列 (column): 被称为字段 ? ...在这个表中 列的数据就表示字段,有 姓名字段、性别字段、年龄字段,每一行的数据表示记录. 了解一下,每个字段都有 字段名、数据类型、约束条件等属性.... Java中的 float 和 double 都是有问题的,不能精确表示一些数据 ~~ 遵循 IEEE754 标准,受限于浮点数在内存中的表示. ...2.创建表 create table table_name(字段 类型,字段 类型 , …); 语法: ? 与其他编程语言 定义的不一样,在MySQL中 类型放在 字段的后面.
不同的数据库生产厂商都支持SQL语句,但都有特有内容。 SQL语句分类 DDL(Data Definition Language)数据定义语言 用来定义数据库对象:数据库,表,列等。...SQL通用语法 SQL语句可以单行或多行书写,分号结尾 可以使用空格和缩进增强语句的可读性 MySQL数据库的SQL语句不区分大小写,关键字建议大写 三种注释 单行注释(– 注释内容) 多行注释(/*...(建议单引号) 如果要插入空值,可以不写字段,或者插入null DQL没有条件的简单查询 注意:查询不会对数据库中的数据进行修改,只是一种显示数据的方式。...FROM 表名 AS 表别名; 清除重复值 SELECT DISTINCT '字段名' FROM '表名'; 某列数据和固定值运算 SELECT 字段名 + 数值 FROM 表名; 某列数据和其他列数据参与运算...SELECT 字段1 + 字段2 FROM 表名; 注意: 参与运算的必须是数值类型 蠕虫复制 什么是蠕虫复制:在已有的数据基础之上,将原来的数据进行复制,插入到对应的表中 INSERT INTO 表名
SQL语句介绍 SQL分类: 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象,也就是创建,修改,删除:数据库,表,列等。...创建表 基本格式: 字段名 参数规定表中列的名称。 数据类型 参数规定列的数据类型(例如 varchar、integer、decimal、date 等等)。 长度 参数规定表中列的最大长度。...约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。...在 SQL 中,我们有如下约束: NOT NULL - 指示某列不能存储 NULL 值。 UNIQUE - 保证某列的每行必须有唯一的值。...FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。 CHECK - 保证列中的值符合指定的条件。 DEFAULT - 规定没有给列赋值时的默认值。
1.1 排序 通过order by语句,可以将查询出的结果进行排序。放置在select语句的最后。...今天我们学习如下五个聚合函数: l count:统计指定列不为NULL的记录行数; l sum:计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0; l max:计算指定列的最大值,如果指定列是字符串类型...l 格式: SELECT 字段1,字段2… FROM 表名 GROUP BY分组字段 HAVING 分组条件; 分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件。...l 下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键 CREATE TABLE Persons( P_Id int PRIMARY KEYAUTO_INCREMENT...l 下面的 SQL 语句强制 "Id_P" 列和 "LastName" 列不接受 NULL 值: CREATE TABLE Persons( Id_P int NOT NULL, LastName varchar
else 要显示的值n或者语句n; end # 2 case when 条件1 then 要显示的值1或语句1 when 条件2 then 要显示的值2或语句2 ......】 【order 不要 排序列表】 1.都忽略null值 2.sum,avg一般用于处理数值型,max min count可以处理任何类型 3.可以和distinct搭配实现去重 4.一般使用count...修改语句 update 表名 set 列=新值,列=新值......外键的特点 要求在从表设置外键关系 从表的外键列的类型和主表的关联列的类型要求一致或兼容,名称无要求 主表的关联列必须时一个key(一般是主键或者唯一) 插入数据时,先插入主表,再插入从表,删数据时...[else 语句n;] end if; # 应用场合:在begin end中 循环结构 分类 while loop repeat 循环控制 iterate类似于 continue 继续,结束本次循环
编辑:王老湿 知识清单 数据分组 创建分组(GROUP BY) 之前学到的筛选操作都是基于整个表去进行的,那如果想要依据某列中的不同类别(比如说不同品牌/不同性别等等)进行分类统计时,就要用到数据分组...过滤分组(HAVING) 在SQL入门中我们学过WHERE,它是对行数据进行筛选过滤的,那么,如果我想对创建的分组数据进行筛选过滤呢?...需要注意的几点: CASE 语句始终位于 SELECT 条件中。 CASE 必须包含以下几个部分:WHEN、THEN和 END。...你可以在 WHEN 和 THEN之间使用任何条件运算符编写任何条件语句(例如 WHERE),包括使用 AND 和 OR 连接多个条件语句。...(其实这里可以直接无视,筛选出来后在python中再进行处理) SQL中提供了一个替换NULL值的函数COALESCE。
,每张表具有唯一的表名用来标识自己 3、表中有一个或多个列,列又称为“字段”,相当于java中“属性” 4、表中的每一行数据,相当于java中“对象” 四、常见的数据库管理系统 mysql、oracle...一、语法 select 查询列表 from 表名 where 筛选条件 二、筛选条件的分类 1、简单条件运算符 > !...3、order by的位置一般放在查询语句的最后(除limit语句之外) 2.4、常见函数 一、概述 功能:类似于java中的方法 好处:提高重用性和隐藏实现细节 调用:select 函数名(实参列表)...,需要使用多表连接 select 字段1,字段2 from 表1,表2,…; 笛卡尔乘积:当查询多个表时,没有添加有效的连接条件,导致多个表所有行实现完全连接 如何解决:添加有效的连接条件 二、分类 按年代分类...) 注意: 支持类型 可以起约束名 列级约束 除了外键 不可以 表级约束 除了非空和默认 可以,但对主键无效 列级约束可以在一个字段上追加多个,中间用空格隔开,没有顺序要求 三、修改表时添加或删除约束
在开发中一般情况下主键是不具备任何含义,只是用于标识当前记录。 * B: 格式: 1.在创建表时创建主键,在字段后面加上 primary key....=utf8 服务器端编码设置 注意:修改完成配置文件,重启服务 25数据表和测试数据准备 * A: 查询语句,在开发中使用的次数最多,此处使用“zhangwu” 账务表。...zhangwu; 或 select money m from zhangwu; 我们在sql语句的操作中,可以直接对列进行运算。...* count:统计指定列不为NULL的记录行数; * sum:计算指定列的数值和,如果指定列; * max:计算指定列的最大值,如果指定列是字符串类型,那么使用字符串类型不是数值类型,那么计算结果为...* SELECT 字段1,字段2… FROM 表名 GROUP BY 字段 HAVING 条件; * 分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件。
创建数据库、创建数据表、向数据表中添加一条条数据信息均需要使用SQL语句 3.1 SQL分类 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表...在创建表时创建主键,在字段后面加上 primary key CREATE TABLE 表名( id int primary key, .... ); 在创建表时创建主键,在表创建的最后来指定主键...可以把列名当做java中的形参,把列值当做实参 值不要超出列定义的长度 如果插入空值,请使用null 插入的日期和字符一样,都使用引号括起来 练习 创建表 emp 并插入数据,表结构如下 列名 列类型...条件查询 2.1 条件查询介绍 条件查询就是在查询时给出WHERE子句,在WHERE子句中可以使用如下运算符及关键字: =、!...,如果指定列是字符串类型,那么使用字符串排序运算; SUM():计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0; AVG():计算指定列的平均值,如果指定列类型不是数值类型,那么计算结果为
MySQL中的SQL语句是不区分大小写的,因此SELECT和select的作用是相同的,但是,许多同学习惯将关键字大写、数据列和表名小写,所以我们也应该养成一个良好的编程习惯,这样写出来的代码更容易阅读和排错...MySQL中的SQL语句是不区分大小写的,因此SELECT和select的作用是相同的,但是,许多同学习惯将关键字大写、数据列和表名小写,所以我们也应该养成一个良好的编程习惯,这样写出来的代码更容易阅读和排错...比较运算符经常被用来作为SELECT查询语句的条件来使用,返回符合条件的结果记录。...NULL的记录行数; sum() 计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0 max() 计算指定列的最大值,如果指定列是字 select sum(price) from...) 计算指定列的平均值,如果指定列类型不是数值类型,那么计算结果为0 聚合函数作用 聚合函数 作用 count() 统计指定列不为NULL的记录行数; sum() 计算指定列的数值和,如果指定列类型不是数值类型
约束 分类---六大约束 添加约束的时机 添加约束的分类 列级约束 表级约束 创建表时添加列级约束 创建表时添加表级约束 查看表的索引 通用写法 主键和唯一的对比 外键的特点 修改表时添加约束...修改表时删除约束 标识列 创建表时设置标识列 查看增长的步长 设置增长的步长 特点 修改表时设置标识列 修改表时删除标识列 TCL---事务控制语言 存储引擎 事务的ACID属性 事务的创建 数据库的并发问题和隔离级别...设置事务隔离级别 总结 回滚点的演示 视图 创建视图 视图的使用 视图的好处 视图的修改 视图的删除 查看视图 视图的更新 视图和表的对比 delete 和 truncate 在事务中的区别 变量...,为了保证表中数据的准确和可靠性 分类—六大约束 NOT NULL: 非空约束,用于保证该字段的值不能为空。...添加约束的时机 创建表时 修改表时 添加约束的分类 列级约束 create table 表名( 字段名 字段类型 列级约束, 字段名 字段类型 列级约束
在mysql中可以支持运行多个数据库,所以我们可以创建多个数据库。 查看数据库 数据库创建好后,使用show语句查看当前mysql中有哪些数据库。...binary与varbinary binary和varbinary用来存储二进制字符串。没有字符集,并且会排序和比较基于列值字节的数值。...数据插入 insert into 表名 values (值1,值2,...); insert into 表名 (列1,列2,...) values (值1,值2); 在mysql中,insert语句,可以一次性插入多条记录...聚合函数: sum函数求和 count函数记录数 max函数最大值 min函数最小值 groupby表示要进行分类聚合的字段 with rollup表示是否对分类聚合后的结果进行在汇总 having表示对分类后的结果进行条件过滤...如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。 ORDER BY 语句用于对结果集进行排序。
SQL 可在数据库中创建存储过程 SQL 可在数据库中创建视图 SQL 可以设置表、存储过程和视图的权限 MySQL是属于关系型数据库 RDBMS中的数据存储在被称为表的数据库对象中,表是相关的数据项的集合...*/ SELECT DISTINCT 字段名 FROM 表名 WHERE 查询条件; /* LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式 */ SELECT column_name(s...注意事项: 注:在ID或者其他字段设置自增长的时候可以不用向id插入数值,因为id 列是自动更新的,表中的每条记录都有一个唯一的数字。...在下面的情况下使用别名很有用: 在查询中涉及超过一个表 在查询中使用了函数 列名称很长或者可读性差 需要把两个列或者多个列结合在一起 基础语法: -- 列的 SQL 别名语法 SELECT column_name...JOIN 从多个表中返回满足 JOIN 条件的所有行,在表中存在至少一个匹配时返回行。
第二条语句中,我们填写了需要插入的属性,所以我们需要对应着属性来插入相关的值,与此同时,我们使用到了子查询语句,在select语句后面对应的插入参数值。...数据库的命名以及字符集等等属性设置,一般在创建的初始时就需要被设置好。在以后的运维过程中基本也不会有什么变动,可能变化的主要就是数据库的字符集。...四、常见的约束 1、含义 一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠 2、分类 (1)not null :非空,用于保证该字段的值不能为空。...#一、创建表时添加约束 #1、添加列级约束 /* 语法 直接在字段名和类型后面追加 约束类型即可。...在列级修改和表级修改中, 主要在于约束类型的限制。 ----
领取专属 10元无门槛券
手把手带您无忧上云