二、实现过程 这里【(这是月亮的背面)】大佬先给出了个解决方法,使用applymap()方法,如下图所示: 运行结果如下,是可以满足粉丝的要求的。...不过这还不够,粉丝后来又提需求了,如下所示: 不慌,理性上来说,直接使用循环遍历绝对可行,稍微废点时间。
使用str.replace ()方法替换特定位置的空格。 大小写转换: 使用str.lower ()将所有字符转换为小写。 使用str.upper ()将所有字符转换为大写。...更改数据格式: 使用to_datetime()函数将字符串转换为日期时间格式。 使用astype()函数改变数据类型。...数据转换: 使用 melt()函数将宽表转换为长表。 使用 pivot_table()函数创建交叉表格。 使用apply()函数对每一行或每一列应用自定义函数。...例如,可以将日数据转换为月度或年度数据。使用resample方法可以方便地实现这一操作。...数据重塑(Data Reshaping) : 数据重塑是将数据从一种格式转换为另一种格式的过程,常见的方法有pivot和melt。这些方法可以用于将宽表数据转换为长表数据,或者反之。
30:删除表中的数据 DELETE FROM 数据表名 WHERE 条件; 31:外键约束的参照操作(外键约束的要求解析) 外键约束保证数据一致性,完整性,实现一对多或者一对一关系 (含有外键的表称为子表...) 外键约束的要求 1:父表和子表必须使用相同的存储引擎,而且禁止使用临时表 2:数据表的存储引擎只能为InnoDB 3:外键列和参照列必须具有相似的数据类型,其中数字的长度或是否有符号位必须相同,而字符的长度则可以不同...外键约束的参照操作 CASCADE:从父表删除或者更新且自动删除或者更新子表中匹配的行 《在两表中插入记录,必须先在父表中插入记录》 SET NULL:从父表删除或者更新行,并且设置子表中的外键列为NULL,如果使用该选项...35:修改数据表(修改,删除) 添加单列 ALTER TABLE 数据表名 ADD 列名称 列定义 [FIRST] 指定列 添加单列(不可以指定位置) ......修改列定义 ? ? 修改列名称 ? ? 修改数据表的名字 ? ? ? ?
图中,左侧的索引就是聚簇索引,因为数据行在磁盘的排列和索引排序保持一致的 聚簇索引的好处:按照聚簇索引排列顺序,查询显示一定范围数据的时候,由于数据都是紧密相连,数据库不用从多 个数据块中提取数据,所以节省了大量的...因此在创建数据表时,尽量不要使字段的默认值为NULL,将字段设置为NOT NULL,并赋予默认值。...适合创建索引的场景 在MySQL的实际应用中,有一些使用场景适合在数据表中创建索引,总结如下: 1.必须为数据表中的主键和外键添加索引。 2.数据表中的数据达到一定量级时,应当为数据表适当添加索引。...主键索引是特殊类型的唯一索引,与唯一索引不同的是,主键索引不仅具有唯一性,而且不能为空,而唯一索引中的列的数据可能为空。 创建单列索引 单列索引表示在创建的索引中,只包含数据表中的单个字段或列。...MySQL中,支持在一张数据表中创建多个单列索引。 创建复合索引 即一个索引包含多个列,MySQL中,同样支持在一张数据表中创建多个组合索引。在使用组合索引查询数据时,MySQL支持最左匹配原则。
对于我来说,学数据库最主要的目的就是学习如何去操作数据库,也就是增删改查。 而其中牵扯到的技术就是Jdbc,翻来覆去学了好几天,无外乎就是对Jdbc的学习与优化。...②对数据表本身的操作:execut() execute,执行的意思,对于数据表本身的操作(增删改查),都是用这个方法。 我们创建一个数据表student,有3列:id,name,age。...②单行多列:queryForMap() 查询出来的结果是一行数据,所以Java中用的返回值是Map集合。...③多行多列:queryFroList() 查询出来的结果是多行数据,所以Java中用的返回值是list集合,就相当于在list集合中装了很多个Map。 其中多行单列也就是属于多行多列。...返回值就是很多个map,自己将list遍历打印map即可。 以上便是对于数据表的查询操作。 然后发现使用JdbcTemplate,大大地简化了核心6步骤中的第5步(处理结果)。
目录 索引概述 索引分类 1.普通索引 2.唯一性索引 3.全文索引 4.单列索引 5.多列索引 6.空间索引 索引的创建 1.在建立数据表时创建索引 格式 2.添加索引 1.普通索引 2.唯一索引 3....全文索引 4.单列索引 5.多列索引 3.删除索引 ---- 索引概述 索引由数据表中一列或多列组合而成,创建索引的目的就是为了优化数据库的查询速度,通过索引查询数据时,不需要遍历所有数据库中的所有数据...4.单列索引 只对应一个字段的索引,其可以包括上述的三种索引。 5.多列索引 对应多个字段的索引,用户可以通过这几个字段进行查询,应用该索引,用户必须使用这些字段的第一个字段。...索引的创建 1.在建立数据表时创建索引 格式 create table 表名(字段名 数据类型[约束条件]......格式 alter table 表名 add index 索引名称(字段名词(长度));/create index 索引名 on 表名(字段名(长度)); 5.多列索引 alter table 表名 add
第二个参数:table_array 是要查的位置,可以选择一片单元格区域,可以是单行,多行,单列,多列,多行多列。...注意:这里的近似匹配不一定就是想象中的字符包含的关系,在微软官方文档中的技术细节中可以找到: 近似匹配-1/TRUE假设表中的第一列按数值或字母顺序排序, 然后将搜索最接近的值。...举例: 两个数据区域,现在需要通过VLOOKUP将下面表格内的年龄对应拼接到第一个表的后面: ?...演示一下如何使用: 解释: 第一个参数选择了学号,第二个选择下方的数据表,意思是将在下方的数据表中查询这个学号值以及选定区域的同一行其他列。 第三个参数3是展示选定区域的第三列年龄列。...第四个参数一般情况下建议直接使用0,不填写则默认是1,如果需要使用模糊匹配则可以使用通配符。
,但是一个数据表可以同时拥有多个单列索引。...组合索引 选中数据表的多列组合然后创建索引,但是组合索引并不是说创建成功都可以被使用,而是需要遵循最左前缀集合。也就是只有在查询条件中使用了这些字段的左边字段,组合索引才会生效。...首先创建一个表test_10_09,并且将id, username, sex三个列组合然后添加索引。...索引优点 数据表的所有数据列都可以添加索引。 使用唯一索引或者主键索引可以保证数据的唯一性。 使用索引可以提高查询数据的效率和性能。 索引缺点 使用索引会占用一定的物理空间。...在列取值范围比较少时不使用索引,比如专业名只有三个取值,使用索引意义确实不大。 组合索引将最经常使用的列放在第一列,保证组合索引能满足最左前缀的要求。
52:内连接查询:(是一种常见的连接查询,内链接查询可以查看两个多两个以上的表)需要注意的是‘’去掉也可以执行的。也可以查询详细字段,将详细字段替换掉*即可。...66:索引引入 索引定义:索引是由数据库表中一列或者多列组合而成,其作用是提高对表中数据的查询速度,类似于图书的目录,方便快速定位,寻找指定的内容 索引的优缺点: 优点:提高查询数据的速度 缺点:创建和维护索引的时间增加了...,也可以是唯一索引,还可以时全文索引 71:多列索引 多列索引在表的多个字段上创建一个索引 ?...(在已经创建好的数据表上面创建唯一索引如下图所示) ? (在已经创建好的数据表上面创建多列索引如下图所示) ? 74:使用ALTER TABLE来创建索引 ?...(使用ALTER TABLE来创建唯一索引) ? (使用ALTER TABLE来创建多列索引) ? 75:删除索引 ?
4、如何选择合适的存储引擎 选择标准:根据应用特点选择合适的存储引擎,对于复杂的应用系统可以根据实际情况选择多种存储引擎进行组合。...Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。...:要加索引的单列或多列,如果是多列要用逗号隔开。...如果想改变某个数据列的数据类型,可以使用CHANGE或MODIFY子句。假设mytbl数据表里的某个数据列的数据类型是SMALLIT UNSIGNED,你想把它改成MEDIUMITUNSIGNEID。...如果重新命名的某个MyISAM数据表是某个MERGE数据表的成员,你必须重新定义那个MERGE数据表,让它使用那个MyISAM数据表的新名字。
从而可以知道MySQL使用组合索引的话,可以更高效的检索数据。在实际工作中,可以根据检索的内容尽可能多的使用组合索引,形成覆盖索引,减少回表查询,减少IO次数,提高效率。...另外,建立了 id 和 name 的联合索引(id列在在前),则select id from user可以避免回表,而不用单独建立id列的单列索引。...在没有为组合索引的第一列赋予使用“=”比较查询条件时,即使为后面的列赋予了使用“=”查询条件也不会缩减数据的查询范围。...由于线段是由无穷多个点构成的,如果无法将BETWEEN 或者LIKE转换为IN,也无法将线段概念的查询条件转换为“=”比较的查询条件。 该“点”就像垫脚石一样,有助于只读取需要的部分。...索引最左匹配原则 多列索引(联合索引)有最左匹配的原则,即最左优先:如果有一个 2 列的索引 (a, b),则已经对 (a)、(a, b) 上建立了索引;如果有一个 3 列索引 (a, b, c),则已经对
) 单列索引和组合索引 单列索引: 即一个索引只包含单个列,一个表可以有多个单列索引 组合索引: 指在表的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字段时,索引才会被使用 全文索引...该列必须从数据表中该定义的多个列中选择 indexname为指定索引的名称,为可选参数,如果不指定则MySQL默认colname为索引值 length为可选参数,表示索引的长度,只有字符串类型的字段才能指定索引长度...,keylen数值越小,表示越快 ref: 提供了关联关系中另外一个数据表里的数据列的名字 rows: 指 MySQL执行查询时预计从当前数据表中读出的数据行数 Extra: 提供了与关联操作有关的信息...possible_keys 与 key 都为 idx_customer_id,说明查询时使用了索引 唯一索引 单列索引是在数据表中的某一个字段上创建的索引,一个表中可以创建多个单列索引,前面两个例子中创建的索引都是单列索引...ALTER TABLE语句或者CREATE INDEX语句,所以,分别讲解一下如何使用ALTER TABLE和CREATE INDEX语句在已知的表字段上创建索引。
,多列时各列之间用逗号分隔。...索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引。...对于单列惟一性索引,这保证单列不包含重复的值。对于多列惟一性索引,保证多个值的组合不重复。 PRIMARY KEY索引和UNIQUE索引非常类似。...如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。 如果从表中删除了某列,则索引会受到影响。...对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。如果删除组成索引的所有列,则整个索引将被删除。
前几天老大叫我做了下索引优化,故将学到的东西记录下来。 1)单列索引就不多说了,不设限制的唯一索引,值唯一的唯一索引,一个表一个非空的主键索引 2)组合索引 组合索引,多个列组合的索引。...最左前缀 若有组合索引(a,b,c),那么根据最左前缀,数据库成立了三个索引(a)(a,b)(a,b,c), 重点: 这里可以看出n个列的组合索引,实际新建的普通 索引是n个, 索引的列数是n(n+1)...1.索引的大小应该小于数据表的大小 因为,每个数据不一定用的是最大的长度,而且建立索引的时间高于插入数据,实际上通常满足索引的列数小于数据库的列数,就能确保索引的大小应该小于数据表的大小。...当然,具体公司具体分析,像淘宝的数据服务器估计为了查询速度,索引大小应该远高于数据表大小。 2.组合索引第一个不应该包含单列索引 原因,重复。...数据库只对,>=,BETWEEN,IN,以及某些时候的LIKE才会使用索引 2.以通配符%和_开头作查询时,MySQL不会使用索引 3.索引不会包含有NULL值的列 4.在索引列上进行数学操作会变成全表查询
换个说法,有了唯一索引就可以确保数据表不会有相同行数据(组成唯一索引键的列). 唯一索引允许空值的存在,空值将视为。...如果由单列组成唯一索引,则此列仅允许一个空值存在;如果由多列组成唯一索引,则值与空值的组合仅允许一个存在。 1.1 唯一键约束 什么是唯一键约束?唯一键约束与唯一索引又有什么区别?...遵循最左前缀原则 ALTER TABLE `table_name` ADD INDEX idx_bid_cid (`business_id`, `customer_id`); 非唯一索引,顾名思义,不约束列的唯一性...又叫普通索引,应当为经常出现在查询条件 where 或排序条件 order by的列建立普通索引。 3....数据表通常用一列或多列来唯一标识行数据,这一列或多列就是主键。 Q:主键索引与唯一索引有啥区别呢? A:1. 主键不允许空值存在的;2. 一个表仅有一个主键。
JSONHelper.ObjectToJSON(): " + ex.Message); } } /// /// 数据表转键值对集合.../// 把DataTable转成 List集合, 存每一行 /// 集合中放的是键值对字典,存每一列 /// ...dt.TableName, DataTableToList(dt)); return result; } /// /// 数据表转...文本转换为数据表数据 /// /// JSON文本 /// >>>(jsonText); } /// /// 将JSON
,必须保证这列不能有重复数据 如果一个唯一索引上指定not null,等价于主键索引 3.单列索引: ALTER TABLE 表名 ADD INDEX 索引名(列名); 或 CREATE INDEX...,这多个列中的值不允许有空值 ALTER TABLE 'table_name' ADD INDEX index_name('col1','col2','col3'); 遵循**“最左前缀”**原则,把最常用作为检索或排序的列放在最左...:单列索引,多列索引。...试一下添加索引 1.首先搞个测试数据表 ? 2.执行以下语句给这个数据表加上索引 ALTER TABLE test_7 ADD INDEX tidx_1(col2); ? 3.看看新增结果 ?...1.5倍;索引表的维护和创建需要时间成本,这个成本随着数据量增大而增大;构建索引会降低数据表的修改操作(删除,添加,修改)的效率,因为在修改数据表的同时还需要修改索引表; 参考:https://jingyan.baidu.com
索引 作用:提高表中数据的查询速度 1.普通索引 2.唯一性索引 3.全文索引 4.单列索引 5.多列索引 6.空间索引 //创建索引 //一.创建表的时候创建索引 create table 表名(...create table test4( id INT, name VARCHAR(20), age INT, INDEX single_name(name(20)) ); //1-5.创建多列索引...create index singleidx on student(age); //2-4.创建多列索引 create index mulitidx on student(name(20),intro...alter table student add index singleidx (age); //3-4.创建多列索引 alter table student add index multidx(name...外键 外键是指引用另一个表中的一列或者多列,被引用的列应该具有主键约束或者唯一性约束,用于建立和加强两个数据表之间的连接。
()实现Series转DataFrame 利用squeeze()实现单列数据DataFrame转Series import pandas as pd s = pd.Series(["北山啦","关注",...下面我们再来看一下,假设我要取出所有大于等于8000的工资,该如何进行处理呢?...xlsx") 这里我们使用DataFrame上的to_excel()方法将数据写入到Excel文件中。...startcol:插入数据的其实列,默认0 engine:使用的写文件引擎,例如:‘openpyxl’ 、 ‘xlsxwriter’ 当然,我们也可以不限于将一个Excel表中的数据写入到另一个Excel...那如果要写多个数据到一个Excel文件的多个数据表(sheet)中,该怎么处理呢?此时可以使用下面的方法。
使用索引用于快速找出在某个或多个列中有一特定值的行,所有MySQL列类型都可以被索引,对相关列使用索引是提高查询操作速度的最佳途径。 ...(2)单列索引和组合索引 事实上,单列索引和组合索引的划分是根据创建索引时所引用的列的数量来划分。 单列索引是只一个索引只包含单个列,一个表可以有多个单列索引。 ...组合索引可以起到多个索引的作用,但是使用时并不是随便哪个字段都可以使用索引的,而是遵从“最左前缀”:利用索引中最左边的列集列匹配行,这样的列集称为最左前缀。...创建多列索引 create index mutil_Index on book(authors(20) , info(20)) ; e....那么设计索引是该如何考虑呢?
领取专属 10元无门槛券
手把手带您无忧上云