
mysql
ztnhnr
这个作者很懒,什么都没留下…
展开
-
Mysql主键、普通索引、唯一索引和全文索引的区别
在MYSQL中,索引功能有如下几个主要类型:PRIMARY(主键), INDEX(普通索引),UNIQUE(唯一索引),FULLTEXT(全文索引)。 PRIMARY 主键。 就是 唯一 且 不能为空。 INDEX 索引,普通的 UNIQUE 唯一索引,不允许有重复。 FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。 不过,主键是一种约束,主键创建后一定包含一个唯一性索引,主键列在创建时,已经默认为非空值 ...原创 2020-12-13 17:22:10 · 1065 阅读 · 0 评论 -
Mysql命令alter add:增加表的字段
1. 加字段在Mysql中,alter add命令用来增加表的字段。其命令格式如下:ALTERTABLE表名ADD字段名数据类型DEFAULTNULLCOMMENT'注释';例如,在表 db_member 中添加了一个字段 addr,类型为varchar(1000),默认值为NULL:ALTERTABLEdb_memberADDaddrVARCHAR(20)DEFAULTNULLCOMMENT'地址';2. 加索引...原创 2020-12-12 14:22:27 · 2767 阅读 · 0 评论 -
Mysql 用一个表里的数据更新另一个表的数据
在MySQL中,有时需要将一个表的部分字段的值更新到两一个表的相应字段中,此时,可以使用以下语句进行更新。语法如下所示:UPDATEtableAa,tableBbSETa.field=b.fieldWHEREa.id=b.id; 该语法将表b中的字段更新到表a的相应字段。如果要更新多个字段,只需在SET后添加多个字段即可。...原创 2020-12-11 13:25:33 · 4698 阅读 · 0 评论 -
MySQL week()函数及参数mode详解
通常,一年的正常年份为365天,闰年为366天。一年又可以分为许多周,每周有7天。 所以一年,我们经常有365/7 = 52周,周范围是从1到52。要查看给定日期属于哪个周数,您可以使用WEEK函数,语法如下所示:WEEK(date[,mode])该函数返回date 对应的星期数。其中: date是要获取周数的日期 mode是一个可选参数,用于确定周数计算的逻辑。它允许您指定本周是从星期一还是星期日开始,返回的周数应在0到52之间或0到53之...原创 2020-11-01 15:04:49 · 3023 阅读 · 0 评论 -
MySQL列举数据库(SHOW DATABASES语句)
数据库是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据。在 MySQL 数据库中存在系统数据库和自定义数据库,系统数据库是在安装 MySQL 后系统自带的数据库,自定义数据库是由用户定义创建的数据库。在 MySQL 中,可使用SHOW DATABASES语句来列举当前用户权限范围以内的数据库。SHOW DATABASES的语法格式为:SHOW{DATABASES|SCHEMAS}[...原创 2020-10-27 13:46:08 · 660 阅读 · 1 评论 -
MySQL的sql_mode模式
sql_mode是mysql数据库中的环境变量,定义了mysql应该支持的sql语法、数据校验等。要查看当前数据库使用的sql_mode,我们可以使用下面的命令进行查看:SELECT@@sql_mode;结果根据个人数据库设置可能不尽相同,如下是本人的数据库设置:一、sql_mode值的含义: ONLY_FULL_GROUP_BY 对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么将认...原创 2020-08-24 13:38:03 · 637 阅读 · 0 评论 -
MySQL中sql语句中反斜杠的处理(如like操作,替换)
准备工作, 创建数据表。在数据库test中创建表db_member,sql语句如下所示:CREATETABLE`db_member`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(100)DEFAULTNULLCOMMENT'姓名',`sex`int(11)DEFAULT'1'COMMENT'性别',`age`int(11)DEFAULTNULLCOMMENT'年龄',`pw...原创 2020-08-21 13:18:57 · 14058 阅读 · 0 评论 -
MySQL表数字类型(int,float,double)字段插入insert空字符时自动转为0
事情的起因是这样,公司服务器上面的业务数据有问题,因为不能直接在服务器上面调试,就把数据库复制到本地。但是在执行sql,插入数据时,同样的语句,在服务器上面没有报错,在本机报错:Data truncated for column '字段名' at row 1表结构如下:CREATETABLE`db_member`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(100)DEFAULTNU...原创 2020-08-19 13:04:35 · 6252 阅读 · 0 评论 -
MySQL substring()函数简介
Mysql中,SUBSTRING 函数从给定字符串中指定的位置开始返回一个指定长度的子字符串。语法1:SUBSTRING(str,pos)SUBSTRING(strFROMpos)语法2:SUBSTRING(str,pos,len)SUBSTRING(strFROMposFORlen)substring() 函数返回字符串str从指定位置pos开始的子串,如果不指定截取的长度值len,则截取从位置pos开始到字符串str结束的全部子串;如果...原创 2020-07-29 13:35:48 · 3565 阅读 · 0 评论 -
MySQL自带的information_schema简介
在MySQL中,information_schema是MySQL自带的,我们可以把 information_schema 看作是一个数据库,它是有关数据库信息的信息数据库。它提供了访问数据库“元数据”的方式,其中保存着关于MySQL服务器所维护的所有其他数据库的信息,如数据库名、数据库中的数据表,数据表的列的数据类型,或访问权限等信息。在information_schema中,有数个只读表,它们实际上是视图,而不是基本表,因此无法看到与之相关的任何文件。 一、information_schema数..原创 2020-07-28 13:47:17 · 1538 阅读 · 0 评论 -
MySQL批量删除表 修改表前缀与表名sql语句
在MySQL中,修改表名可以使用如下语句:ALTERTABLE原表名RENAMETO新表名;不过上面的一句SQL语句一次只能修改一张表,如果要批次修改多个表,上面的方法就不适用了。这时,我们可以使用 information_schema 中的 TABLES ,来实现批次修改的目的。在MySQL中,把 information_schema 看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据...原创 2020-07-27 13:34:47 · 441 阅读 · 0 评论 -
MySQL按 年 月 周 日统计表中的数据
今天在做统计报表的时候,需要对表数据按年、月、周和日分别进行统计。统计用到了MySQL日期函数DATE_FORMAT、YEAR、QUARTER、MONTH和WEEK,本文就这些函数的使用和功能实现进行简单记录,以备后续使用参考。准备工作 本文使用的表结构(温湿度采集表):CREATETABLE`tn_data`(`id`int(11)NOTNULLAUTO_INCREMENT,`temperature`floatDEFAULT'0'COM...原创 2020-07-18 15:17:40 · 1622 阅读 · 0 评论 -
MySQL同时统计多个条件的记录条数
今天在做统计报表的时候,需要先 group by 对数据分组后,再根据条件对每个分组的数据进行多个条件统计。之前开发时,用的都是简单的 count(*), sum(a) 等计算,第一次根据多个条件进行统计,专门网络搜索了一些资料,本文记录下来,以备后续使用。准备工作 本文使用的表结构(人员表):CREATETABLE`tn_member`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(100)D...原创 2020-07-06 19:21:48 · 13292 阅读 · 1 评论