):保证一个表中的数据匹配另一个表中的值的参照完全性 CHECK:保证列中的值符合条件 DEFAULT:规定没有列赋值时的默认值 实例 DROP TABLE IF EXISTS `websites`;...查询结果的不确定性:使用*通配符可能会返回多个不必要的列,包括一些不需要的敏感信息或者关联表中的数据,增加了数据传输的开销,并且也增加了处理结果集的复杂度。 3....子查询是指在 SQL 查询中嵌套使用的查询,将内部查询的结果作为外部查询的数据源之一。...通过子查询,可以将查询结果当做一个表来使用,从而进行更复杂的数据操作和筛选。...子查询的结果就好像是一个临时的虚拟表,可以被外部查询引用和操作。 通过子查询,我们可以实现更灵活、更精细的数据查询和操作,从而满足复杂的业务需求。
countries_df.sample(2) 获取基本信息 countries_df.info() 通过info()可以看出 从输出结果来看,数据框包含五列: country: 字符串类型,包含...region: 字符串类型,包含 234 个非空值。 land_area: 整数类型,包含 234 个非空值。 fertility_rate: 浮点数类型,包含 233 个非空值。...通过使用 head(10) 来仅选择前十个最大的国家,并调整了x轴和y轴。...countries_df[‘region’].unique() 获取了数据框中 ‘region’ 列的唯一值,并将其转换为列表。...通过使用 head(20) 来选择中位年龄最高的国家,并设置 x 轴为 ‘country’,y 轴为 ‘median_age’,颜色由 ‘median_age’ 决定。
INSERT:通过向表中添加一行或多行来插入表中的数据。 UPDATE:更新表中的一行或多行。 DELETE:从表中删除一行或多行。...使用 DML 既然你已经熟悉了各种 DML 语句的含义,就可以开始使用它们了。你可以使用我的 GitHub 存储库中的数据模型来完成这些练习。...INSERT INTO INSERT INTO 语句向表中添加行。可以通过使用 VALUES 子句定义一行或多行或通过插入子查询的结果来使用它。...它有一个 SET 子句,将列设置为给定值,还有一个 WHERE 子句来指定要更新哪些行。你几乎总是希望为 UPDATE 语句使用 WHERE 子句;否则,UPDATE 语句将更新表中的所有行。...上面的语句根据匹配的 country_id(主键)值将数据合并到 countries 表中。
MySQL 支持 LIMIT 语句来选取指定的条数数据, Oracle 可以使用 ROWNUM 来选取。...某些数据库中BETWEEN 选取介于两个值之间(但不包括两个测试值的字段 ,且包括两个测试值的字段,且包括第一个测试值但不包括最后一个测试值的字段) AS 别名 描述:通过使用 SQL,可以为表名称或列名称指定别名...在下面的情况下使用别名很有用: 在查询中涉及超过一个表 在查询中使用了函数 列名称很长或者可读性差 需要把两个列或者多个列结合在一起 基础语法: -- 列的 SQL 别名语法 SELECT column_name...2.外连接就好像是为非基准表添加了一行全为空值的万能行,用来与基准表中找不到匹配的行进行匹配,两个没有空值的表进行左连接,左表是基准表,左表的所有行都出现在结果中,右表则可能因为无法与基准表匹配而出现是空值的字段...但是可以使用 AS 子句来应用新名称。 INSERT INTO SELECT 语句 描述:INSERT INTO SELECT 语句从一个表复制数据,目标表中任何已存在的行都不会受影响。
eg1 : 表中都有哪些国家 select distinct country from sanguo; eg2 : 计算一共有多少个国家 select count(distinct country...需要将子查询结果集重命名一下,方便where子句中的引用操作 2. 子句结果作为一个值使用时,返回的结果需要一个明确值,不能是多行或者多列。 3....: 计算每个国家的平均攻击力 select country,avg(attack) from sanguo group by country; 注意: 使用分组时select 后的字段为group...索引操作 ⭐️概述 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。能够加快数据检索速度,提高查找效率。...注:约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、关联性 外键约束分主表和从表:若同一个数据库中,B表的外键与A表的主键相对应,则A表为主表,B表为从表。
在第四步中,我们df对数据框进行数据透视,将案例数作为数据字段在国家/地区之外创建列。这个新的数据框称为covid。然后,我们将数据框的索引设置为日期,并将国家/地区名称分配给列标题。...在第五步中,我们复制数据框covid并将其命名为percapita。我们使用一个字典来存储我们所有国家的人口,然后将每个值除以人口,然后将其乘以100,000,以产生每100,000人中有多少病例。...它将包含国家/地区名称的文本放在最后covid.index[-1]一天的y值(始终等于该列的最大值)的最后一个x值(→数据框中的最后日期)的右侧。...最后,在第九步中,我们添加了有关图表的标题,副标题和源信息。我们再次使用变量来定位数据,以使图形更新时,这些位置也会动态更新! 这是第一张图表的最终结果: ?...我们可以使用Python的功能来根据当今的数据自动更新图表。
本篇内容暂时讲解数据库的筛选部分,因为数据库的最初入门如创建,备份等都有讲过,魔法传送:传送门 该传送门内容有: MYSQL 最重要的命令 SELECT 从数据库中提取数据 UPDATE 更新数据库中的数据...返回的数据存储在一个结果表中,称为结果集。 SELECT 语法: SELECT column1, column2, ... 此处,column1、column2、… 是要从中选择数据的表的字段名称。...SELECT City FROM Customers; 3-从Customers表中的Country列中选择所有不同的值。...; 以下 SQL 语句列出了不同(不同)客户国家/地区的数量: SELECT COUNT(DISTINCT Country) FROM Customers; 练习: 1-从表中的Country列中选择所有不同的值...仅在指定列中插入数据 下面的 SQL 语句将插入一条新记录,但只在“CustomerName”、“City”和“Country”列中插入数据(CustomerID 会自动更新): INSERT INTO
图2 正常读入数据后,我们分别使用传统方法和query()来执行这样的组合条件查询,不同的条件之间用对应的and or或& |连接均可: ❝找出类型为「TV Show」且国家不含「美国」的「Kids'...TV」 ❞ 图3 通过比较可以发现在使用query()时我们在不需要重复书写数据框名称[字段名]这样的内容,字段名也直接可以当作变量使用,而且不同条件之间不需要用括号隔开,在条件繁杂的时候简化代码的效果更为明显...: 「常规index」 对于只具有单列Index的数据框,直接在表达式中使用index: # 找出索引列中包含king的记录,忽略大小写 netflix.set_index('title').query...的names为空的情况,按照顺序,用ilevel_n表示MultiIndex中的第n列index: # 构造含有MultiIndex的数据框,并重置index的names为None temp = netflix.set_index...API了,但面对eval(),还是逊色不少 DataFrame.eval()通过传入多行表达式,每行作为独立的赋值语句,其中对应前面数据框中数据字段可以像query()一样直接书写字段名,亦可像query
图2 正常读入数据后,我们分别使用传统方法和query()来执行这样的组合条件查询,不同的条件之间用对应的and or或& |连接均可: 找出类型为TV Show且国家不含美国的Kids' TV...图3 通过比较可以发现在使用query()时我们在不需要重复书写数据框名称[字段名]这样的内容,字段名也直接可以当作变量使用,而且不同条件之间不需要用括号隔开,在条件繁杂的时候简化代码的效果更为明显...Index的数据框,直接在表达式中使用index: # 找出索引列中包含king的记录,忽略大小写 netflix.set_index('title').query("index.str.contains...图11 names不为空的MultiIndex 而对于MultiIndex的names有内容的情况,直接用对应的名称传入表达式即可: # 构造含有MultiIndex的数据框,并重置index的names...图13 虽然assign()已经算是pandas中简化代码的很好用的API了,但面对eval(),还是逊色不少 DataFrame.eval()通过传入多行表达式,每行作为独立的赋值语句,其中对应前面数据框中数据字段可以像
数据库中字段【年】部分是否可以建立唯一索引 verbose_name Admin中显示的字段名称 blank Admin中是否允许用户输入为空...普通的python字符串是经过编码的,意思就是它们使用了某种编码方式(如ASCII,ISO-8859-1或者UTF-8)来编码。...当你在Python中处理Unicode对象的时候,你可以直接将它们混合使用和互相匹配而不必去考虑编码细节。 Django 在其内部的各个方面都使用到了 Unicode 对象。...比如,稍微修改 order_by() 语句来实现: >>> Publisher.objects.order_by('-name')[0] 更新多个对象 模型的save()方法,这个方法会更新一行里的所有列...()方法更新了不仅仅是name列的值,还有更新了所有的列。
[[‘name’, ‘alpha-3’]]: 选择了iso_map数据框中的’name’和’alpha-3’两列。...iso_map[‘Country’] = iso_map[‘Country’].str.lower(): 将’Country’列中的所有字符转换为小写字母,这样可以确保不同数据框中的国家名字的大小写一致...=‘left’): 这行代码将df和iso_map两个数据框按照’Country’列进行左连接,即保留df中所有的行,并将iso_map中匹配的行合并进来。...让我为你解释一下: df: 指定要使用的数据框。 locations=‘ISO_alpha’: 指定地理位置的列,这里是ISO_alpha,用于与地图上的国家/地区相匹配。...color_continuous_scale=‘viridis’: 设置颜色的渐变色带。 hover_name=‘Country’: 当鼠标悬停在地图上的特定国家时,显示国家名称。
Python的一个高级可视化库plotly_express是目前使用和见识过最棒的可视化库,通过这篇文章来入门这个可视化神器。 这篇文章可能不仅仅是入门? ?...为列中的不同值,(由px)自动匹配不同的标记颜色;若列为数值数据时,还会自动生成连续色标; symbol:指定列名。为列中的不同值,设置不同的标记形状; size:指定列名。...列中的值用于提供跨动画帧的联动匹配; category_orders:带有字符串键和字符串列表值的字典,默认为{},此参数用于强制每列的特定值排序,dict键是列名,dict值是指定的排列顺序的字符串列表...实际上,color指定列时,px会自动匹配颜色:1)若指定列是数值数据,通过参数color_continuous_scale可以设定具体的颜色序列;2)若指定列是非数值数据时,通过参数color_discrete_sequence...可以设定具体的颜色序列(循环匹配);通过参数color_discrete_map可以为列中不同值,指定具体的颜色; range_color:2个数字元素组成的列表,参数用于设定连续色标上的自动缩放,即边界的大小值
AND...联合使用 空值检查 当我们创建表的时候,可以指定其中的列是否包含空值。在一个列不包含值时,称其包含空值NULL。...; 代码解释: 存在列vend_name列中的名字 包含一个空格和一个左圆括号的字符串 存在vend_country列中的国家 包含一个右圆括号的字符串 小知识:MySQL中如何去掉空格?...列名在圆括号中,各个列之间通过逗号隔开 每列的定义以列名开始,后紧跟数据类型 ,是否允许控制等 整条语句是以分号结束 使用NULL值 NULL值就是没有值或者缺失值。...注意NULL和空字符串的区别: NULL值没有值,不是空字符串 空字符串值一个有效的值,它不是无值 NULL值使用关键字NULL而不是空字符串指定 指定默认值 SQL中创建表的时候可以指定通过关键字DEFAULT...DBMS通过在数据库表上施加约束来实施引用完整性。 1、主键 主键是一种特殊的约束,用来保证一列(或者一组列)中的值是唯一的。
AND...联合使用 空值检查 当我们创建表的时候,可以指定其中的列是否包含空值。在一个列不包含值时,称其包含空值NULL。...; 代码解释: 存在列vend_name列中的名字 包含一个空格和一个左圆括号的字符串 存在vend_country列中的国家 包含一个右圆括号的字符串 小知识:MySQL中如何去掉空格?...= 'Sam Roberts' WHERE cust_id = '10000000005'; -- 3、过滤条件 在更新多个列的值时,只需要使用提交SET命令,每个列=值对之间通过逗号隔开,最后一个列不同...注意NULL和空字符串的区别: NULL值没有值,不是空字符串 空字符串值一个有效的值,它不是无值 NULL值使用关键字NULL而不是空字符串指定 指定默认值 SQL中创建表的时候可以指定通过关键字DEFAULT...DBMS通过在数据库表上施加约束来实施引用完整性。 1、主键 主键是一种特殊的约束,用来保证一列(或者一组列)中的值是唯一的。
前面实现了第一种方法,就是通过写文件,然后参数化读取。 现在来讲第二种实现,直接改脚本里面数据。 首先jmeter文件存储为xml类型的。...,尾字符串,并不是必须的,例子中没有包含。...查找指定的子节点: 当XML文件较大或者其中的子节点tag非常多的时候,一个一个获取是比较麻烦的而且有很多不是我们需要的,这样我们可以通过find('nodeName')或者findall('nodeName...标签 rank = country.find("rank").text # 获取country标签的name属性 name = country.get("name") print(name...然而,我发现了jmeter运行是可以传入参数的。 JMeter 命令行通过-D来指定System Properties,类似于Jdk中我们用-D来指定一些系统属性,比如开启JMX远程监控。
可以用 head() 和 tail() 来可视化数据框的一小部分。 通过这些方法,你可以迅速了解正在分析的表格文件。...在代码中,指定 deep=True 来确保考虑到了实际的系统使用情况。...它可以通过两种简单的方法节省高达 90% 的内存使用: 了解数据框使用的类型; 了解数据框可以使用哪种类型来减少内存的使用(例如,price 这一列值在 0 到 59 之间,只带有一位小数,使用 float64...这种分类类型允许用索引替换重复值,还可以把实际值存在其他位置。教科书中的例子是国家。和多次存储相同的字符串「瑞士」或「波兰」比起来,为什么不简单地用 0 和 1 替换它们,并存储在字典中呢?...age']))) 1.40 MB 通过使用「智能」转换器,数据框使用的内存几乎减少了 10 倍(准确地说是 7.34 倍)。
可以用 head() 和 tail() 来可视化数据框的一小部分。 通过这些方法,你可以迅速了解正在分析的表格文件。...在代码中,指定 deep=True 来确保考虑到了实际的系统使用情况。...它可以通过两种简单的方法节省高达 90% 的内存使用: 了解数据框使用的类型; 了解数据框可以使用哪种类型来减少内存的使用(例如,price 这一列值在 0 到 59 之间,只带有一位小数,使用 float64...这种分类类型允许用索引替换重复值,还可以把实际值存在其他位置。教科书中的例子是国家。和多次存储相同的字符串「瑞士」或「波兰」比起来,为什么不简单地用 0 和 1 替换它们,并存储在字典中呢?...age ]))) 1.40 MB 通过使用「智能」转换器,数据框使用的内存几乎减少了 10 倍(准确地说是 7.34 倍)。
SQL 目录 检索 过滤检索结果 数据汇总处理 分组 给检索结果排序 表操作 插入数据 更新删除数据 子查询-迭代查询 联结-关联多个表 组合查询 视图 其它 检索 检索某表中单个列: SELECT 列名...字符串拼接:不同数据库有差异,MySQL中: SELECT concat(vend_name , vend_country) AS vend_title FROM Vendors ORDER...约束:每个列可以有一种或几种约束。 NOT NULL 非空约束. UNIQUE 唯一约束,可唯一标识数据库表中的每条记录。...FULL OUTER JOIN 会把两张表中没有匹配到的列也显示出来(mysql 不支持,可通过 UNION 实现) OUTER 可省略。...每当用户查询视图时,数据库引擎通过使用 SQL 语句来重建数据。
目录 检索 过滤检索结果 数据汇总处理 分组 给检索结果排序 表操作 插入数据 更新删除数据 子查询-迭代查询 联结-关联多个表 组合查询 视图 其它 检索 检索某表中单个列: SELECT 列名...字符串拼接: 不同数据库有差异,MySQL中: SELECT concat(vend_name , vend_country) AS vend_title FROM...约束: 每个列可以有一种或几种约束。 NOT NULL 非空约束. UNIQUE 唯一约束,可唯一标识数据库表中的每条记录。...FULL OUTER JOIN 会把两张表中没有匹配到的列也显示出来(mysql 不支持,可通过 UNION 实现) OUTER 可省略。...每当用户查询视图时,数据库引擎通过使用 SQL 语句来重建数据。
领取专属 10元无门槛券
手把手带您无忧上云