
MySQL
文章平均质量分 75
kejiayuan
这个作者很懒,什么都没留下…
展开
-
Python连接MySQL数据库
Python语言是一种流行的开源编程语言,不仅表达能力强,提供了高效的数据结构,还能简单有效地面向对象编程。我们使用Python进行web开发、网络爬虫、数据挖掘、人工智能等研究时,不可避免的要连接数据库来存储或读取数据。本文主要介绍Python连接MySQL数据库的方法,以及DB原创 2022-04-22 21:08:46 · 22045 阅读 · 0 评论 -
NewSQL新式的关系型数据库
数据库发展至今历经三代更迭:SQL,传统关系型数据库,例如 MySQLNoSQL,非关系型数据库,例如 MongoDBNewSQL,新式关系型数据库,例如SpannerSQL 的问题随着互联网的发展以及业务数据量的不断膨胀,互联网应用的用户规模和数据量呈指数级增长,并且要求7X24小时在线。传统关系型数据库无法满足高性能、高并发、扩展性的要求,在这种环境下通常有2种解决方法:升级服务器硬件虽然提升了性能,但总有天花板。数据分片,使用分布式集群结构对单点数据库进行数据分片,存放到由原创 2022-03-28 20:57:09 · 1957 阅读 · 0 评论 -
后关系型数据库Caché
关系型数据库把数据表示为简单的两维模型,即表示为行与列的记录来进行存储处理。虽然关系型数据库简单、易于理解,并被广泛的应用,但是随着Internet的发展,多种复杂数据的使用,这种简单两维模型的关系型数据库显然已经难以应付各类复杂的应用。于是,更多的数据库专家开始了对后关系型数据库的研究。后关系型数据库采用的是独特的多维数据结构,这不仅能够真实地反应和更好地描述现实世界的复杂数据及其之间的联系,同时也使数据的存取能够更快实现。后关系型数据库提供三种方式访问数据:对象访问、SQL访问、直接对多维数据数组访原创 2022-03-25 18:37:09 · 895 阅读 · 0 评论 -
非关系型数据库
“数据库”起源于20世纪60年代后期,1970年IBM的研究员E.F.Codd博士连续发表论文提出关系模型,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。关系型数据库的瓶颈关系型数据库的最大特点就是事务的一致性,但是,在网页应用中,尤其是SNS应用中,一致性却显得不是那么重要,用户A看到的内容和用户B看到的内容更新不一致是可以容忍的,或者说,两个人看到同一好友的数据更新的时间差那么几秒是可以容忍的,因此,关系型数据库的最大特点在这里已经不是那么重要了。相反地,关系原创 2022-03-24 19:28:24 · 7753 阅读 · 0 评论 -
数据类型之日期时间
类型格式大小范围用途YEARYYYY1字节(1901,2155)年TIMEHH:MM:SS3字节(-838:59:59,838:59:59)时间DATEYYYY-MM-DD3字节(1000-01-01,9999-12-31)日期DATETIMEYYYY-MM-DD HH:MM:SS8字节(1000-01-01 00:00:00,9999-12-31 23:59:59)日期时间TIMESTAMPYYYY-MM-DD HH:MM...原创 2021-04-27 19:59:09 · 1835 阅读 · 0 评论 -
数据类型之整数
类型大小范围范围(unsigned)用途TINYINT1字节(-128,127)(0,255)小整数值SMALLINT2字节(-32768,32767)(0,65535)大整数值MEDIUMINT3字节(-8388608,8388607)(0,16777215)大整数值INT4字节(-2147483648,2147483647)(0,4294967295)大整数值BIGINT8字节(-9223372036854775808...原创 2021-04-27 16:31:57 · 1074 阅读 · 0 评论 -
当数据库查询速度过慢时,从哪几个方面排查解决?
影响数据库查询速度的四个因素风险分析QPS(Queries Per Second):每秒查询率,是指一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。TPS(TransactionsPerSecond):事务数/秒,它是软件测试结果的测量单位。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。效率低下的SQL语句会带来超高的QPS与TPS:大量的并发:数据连接数被占满(max_connection默认100原创 2021-04-23 21:22:07 · 3902 阅读 · 2 评论 -
Excel连接MySQL数据库
本机环境:Win10 64位操作系统Excel2019 64bitMySQL服务+workbench客户端MySQL ODBC连接器VC++ 2019 Redistributable以上组件务必安装相同位数的版本,否则容易报错!操作步骤:MySQL官网下载连接驱动,32/64位系统均可用。下载完成后双击安装即可。安装完成后,在Excel“数据”选项卡中点击“MySQL for Excel”。在弹出的对话框中填写连接信息即可连接成功。...原创 2021-03-30 18:51:11 · 2931 阅读 · 0 评论 -
数据处理之缺失值处理
在数据分析工作中,数据准备(Data Preparation,包括数据的获取、清洗、转换和集成)常常占据了70%左右的工作量。没有高质量的数据,就没有高质量的数据挖掘结果,数据缺失是数据分析中经常遇到的问题之一。缺失值是指粗糙数据中由于缺少信息而造成的数据的删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的。值得注意的是,这里所说的缺失值,不仅包括数据库中的NULL值,也包括用于表示数值缺失的特殊数值(比如,在系统中用-999来表示数值不存在)。如果在数据库中缺乏相关的数据说明,常常需要花费更原创 2021-03-12 19:44:41 · 6431 阅读 · 0 评论 -
数据类型之小数
类型大小范围(有符号)范围(无符号)用途FLOAT4字节(-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)0,(1.175 494 351 E-38,3.402 823 466 E+38)单精度 浮点数值DOUBLE8字节(-1.797 693 134 862 315 7 E+308,-2.225073858507 2014E-308),0,...原创 2021-02-20 19:21:12 · 6122 阅读 · 1 评论 -
数据类型之字节与字符的区别
字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位。每个bit位是0/1两种状态,也就是说一个字节可以表示256个状态。字符(Character)是指计算机中使用的字母、数字、字和符号,如’A’、‘B’、’$’、’&'等。字节与字符:ASCII 码中,一个英文字母(不分大小写)为一个字节,一个中文汉字为两个字节。UTF-8 编码中,一个英文字为一个字节,一个中文为三个字节。Unicode 编码中,一个英文为一个字节,一个中文为两个字节。符号:英文标原创 2021-02-18 17:32:32 · 2006 阅读 · 1 评论 -
数据类型之CHAR和VARCHAR的区别
char是固定长度字符串类型,而varchar是可变长度字符串类型。也就是说,定义一个char(10)和varchar(10),如果存进去的是‘csdn’,那么char所占的长度依然为10,除了字符‘csdn’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时 候,char类型的要用trim()去掉多余的空格,而varchar是不需要的。char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用3个字节。varchar的存储方式是,对每个英文字符占用3个字节,汉字也.原创 2021-01-21 13:55:48 · 2287 阅读 · 0 评论 -
MySQL性能优化
MySQL性能优化就是通过合理安排资源,调整系统参数使MySQL运行更快、更节省资源。MySQL性能优化包括查询速度优化、数据库结构优化、MySQL服务器优化等。优化简介优化数据库是数据库管理员和数据库开发人员的必备技能。MySQL优化,一方面是找出系统瓶颈,提高MySQL数据库整体的性能;另一方面需要合理的结构设计和参数调整,以提高用户操作响应的速度;同时还要尽可能节省系统资源,以便系统可以提供更大负荷的服务。例如,通过优化文件系统,提高磁盘I/O的读写速度;通过优化操作系统调整策略,提高MySQL在原创 2020-09-25 18:16:31 · 558 阅读 · 0 评论 -
Power BI连接MySQL
在主页选择从MySQL数据库获取数据输入数据库IP和使用的数据库名称点击确定后选择数据库, 然后输入用户名密码, 选择级别选择指定的数据库即可之后弹出的导航器中即可有可预览的数据也可以在连接数据库时,选择高级查询中的sql语句执行查询操作, 这样也可以直接加载数据如果出现“此连接器需要安装一个或多个其他组件才能使用”这样的情况:是因为MySQL没有安装连接Power BI的驱动点击“了解详细信息”之后,进入MySQL组件的下载页面,先下载Connector/Net的组件下载地址:原创 2020-09-07 13:28:42 · 4525 阅读 · 0 评论 -
主流的ETL工具
ETL是数据仓库中的非常重要的一环,是承前启后的必要的一步。ETL负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库中,成为联机分析处理、数据挖掘的基础。ETL是什么ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。通俗的说法就是从数据源抽取数据出来,进行清洗加工转换,然后加载到定义好的数据仓库模型中去。目的是原创 2020-08-20 19:51:05 · 1367 阅读 · 2 评论 -
基于SQL的淘宝用户行为分析
互联网经济的高速发展使得企业营销的焦点从产品中心转化为客户中心,客户关系成为企业的核心问题,客户关系管理的核心问题是客户分类,通过客户分类区分无价值、高价值客户,针对不同价值的客户采取不同的营销策略,以实现企业利润的最大化;...原创 2020-11-22 13:24:58 · 852 阅读 · 0 评论 -
SQL中的NULL
特殊的未知值NULL不是0,也不是’'空字符串,而是一个未知的状态——可能有值,可能无值,可能存在,可能不存在,可能是任何值,可能不是任何值。总之一切皆有可能。NULL 的值不确定,因此 NULL 与 NULL 是不相同的。在逻辑判断中,NULL=NULL 返回的判断结果不是 TRUE ,而是 NULL。因为,未知和未知是无法进行比较的。假设你有两场相亲,在见面之前,你对这两个相亲对象的具体信息一无所知。因此,这俩人对你来说,都是“未知的”,都可以标记为 NULL。但是,你能说这俩人是同一个人吗?不能吧原创 2020-07-23 09:23:25 · 887 阅读 · 0 评论 -
SQL在线刷题的网站推荐
1、SQLZOO(⭐⭐)免费的SQL学习网站,包括SQL 学习的教程和参考资料。支持English • 日本語 • 中文(繁体),不过选择繁体中文后会发现翻译的一般,还不如直接用谷歌/有道翻译。。。每一个语法配套一个教程、一份数据和一个测验,非常适合初学者使用,可以一边通过教程学习语法知识,再通过测验巩固。2、XUESQL(⭐⭐⭐)免费的SQL学习网站,上部分是教程手册,下部分是在线练习,还有配套的B站免费视频。写完SQL直接回车提交,如果正确会自动进入下一题。3、牛客网(⭐⭐⭐)专门刷题原创 2020-07-17 18:04:47 · 25019 阅读 · 1 评论 -
数据仓库
数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。面向主题:数据仓库中的数据是按照一定的主题进行组织。集成:对原有分散的数据库数据经过系统加工、整理,消除源数据中的不一致性相对稳定:数据进入数据仓库以后只需要定期的加载、刷新。反映历史变化:通过这些数据信息,对企业的发展历程和未来趋势做出定量分析预测。...原创 2020-07-17 17:37:24 · 552 阅读 · 0 评论 -
MySQL5.7导入数据
第一步:创建数据库(如果数据库已经存在,这一步可省略,不需要重复创建)create database test;第二步:选择进入数据库(进入数据库之后,才可以在数据库中创建表和导入数据)use test;第三步:创建表(先创建表结构,才可以在表中存储数据)create table emp( empno int primary key, ename varchar(15) unique, job varchar(10) not null, mgr int,.原创 2020-06-15 01:47:04 · 2365 阅读 · 0 评论 -
阿里自研数据库再破世界纪录
去年十一,阿里云自研的数据库PolarDB当选了世界互联网领先科技成果。再之前,蚂蚁金服自主研发的金融级分布式关系数据库OceanBase,在国际事务处理性能委员会(TPC)的TPC-C基准测试中登上榜首。这一成绩还打破了由美国公司甲骨文(Oracle)保持了9年之久的世界记录,成为首个登顶该榜单的中国数据库产品。如今,7个月后,纪录再度被刷新。OceanBase不仅打破了去年自己保持的世界纪录,性能分数首次突破7.07亿,相比去年大幅提升近11倍。继5G移动通信和高端芯片之后,中国公司在又一个“核高原创 2020-06-01 06:29:50 · 1257 阅读 · 0 评论 -
用户留存分析
在互联网行业中,用户在某段时间内开始使用某一款APP,经过一段时间后,仍然继续使用该APP的用户,被认作是留存用户。这部分用户占当时新增用户的比例即是留存率,会按照每隔1单位时间(日、周、月)来进行统计。留存用户和留存率是产品优质服务的体现。次日留存率:(第一天新增的用户,在注册的第2天还登录的用户数)/第一天新增总用户数;三日留存率:(第一天新增的用户,在注册的第3天还登录的用户数)/第一天新增总用户数;七日留存率:(第一天新增的用户,在注册的第7天还登录的用户数)/第一天新增总用户数;..原创 2020-05-29 12:08:18 · 3788 阅读 · 7 评论 -
SQL计算复购率
需求背景:订单表中有每笔订单的下单时间、用户ID、订单金额等信息,需要统计每个月在接下来几个月用户复购情况。create table order_info(order_id int primary key,user_id int,amount decimal(10,2),create_time datetime);insert into order_info values(101,11211,749.00,'2020-01-01 00:04:00'),(102,75205,939.00原创 2020-05-28 18:19:19 · 7294 阅读 · 1 评论 -
MySQL子查询
子查询又称为嵌套查询,它是指在一个select语句中包含另一个或多个完整的select语句。子查询的语法规则:子查询需要用圆括号括起来。子查询最多可以嵌套到32层(个别查询可能会不支持32层嵌套)。执行顺序由内到外,先执行内部的子查询,再执行外部的主查询。子查询的分类按照子查询返回的结果,可分为:标量子查询:返回的结果是一个数据(单行单列)行子查询:返回的结果是一行(单行多列...原创 2020-04-22 15:17:32 · 1139 阅读 · 0 评论 -
MySQL多表查询之纵向合并
纵向合并查询又称为联合查询,它是用union关键字把多条select语句的查询结果合并为一个结果集。纵向合并的前提是被合并的结果集的字段数量、顺序和数据类型必须完全一致。字段名不一样的情况下,会将第一个结果集的字段名作为合并后的虚拟结果集的字段名。select <字段1>[,<字段2>,…] from <表名1>union[ all] select &l...原创 2020-04-21 17:27:06 · 8236 阅读 · 0 评论 -
MySQL多表查询之横向连接
我们之前学习的SELECT语句都是单表查询,随着我们使用数据库的灵活性越来越高,当我们需要的数据在不同的表中时,就需要使用多表查询来检索我们需要的数据。多表查询分为横向连接查询和纵向合并查询。连接查询是通过多张表中共有的关键字段,将多张表连成一张虚拟结果集,来补充字段信息,我们可以按照业务需求检索多张表中的数据。SQL查询的基本原理:单表查询:根据where条件过滤表中的记录,然后根据s...原创 2020-04-21 16:56:55 · 2446 阅读 · 0 评论 -
SQL计算QQ连续登陆天数
最近遇到一个SQL查询需求:计算QQ连续登陆天数?电脑qq连续在线两个小时算一天,手机qq连续在线6小时算一天。连续登陆天数不间断,如果有一天没登陆就重新计算。数据准备mysql> create table user_login(user_id int,login_time date);mysql> insert into user_login values(1,'2019...原创 2020-03-05 08:04:26 · 2922 阅读 · 0 评论 -
MySQL正则表达式
正则表达式用来描述或者匹配符合规则的字符串。它的用法和like比较相似,但是它又比like更强大,能够实现一些很特殊的规则匹配。正则表达式需要使用REGEXP命令,匹配到返回"1",匹配不到返回"0",默认不加条件REGEXP相当于like ‘%%’。在前面加上NOT相当于NOT LIKE。在字符串开始处进行匹配:^mysql> select 'abc' regexp '^a';+...原创 2020-03-01 22:04:01 · 608 阅读 · 0 评论 -
MySQL索引
数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询数据库表中数据。索引的意义索引用于快速找出在某个字段中有特定值的行。如果不使用索引,MySQL必须从第一条记录开始检索表中的每一条记录,直到找出相关的行,那么表越大,查询数据所花费的时间就越多。如果在表中查询的字段有索引,MySQL能够快速到达一个位置去检索数据文件,而不需要再去查看所有数据,那么将会节省很大一部分查询时间。比如...原创 2020-03-01 21:22:38 · 1892 阅读 · 0 评论 -
MySQL8.0开窗函数
作为一名数据分析师,日常工作中经常会遇到类似这样的需求:怎么样得到各部门工资排名前N名员工列表?查找各部门每人工资占部门总工资的百分比?环比如何计算?对于这样的需求,使用传统的SQL实现起来比较困难。这类需求都有一个共同的特点,需要在单表中满足某些条件的结果集内部做一些函数操作,不是简单的表连接,也不是简单的聚合可以实现的,通常费了大半天时间写出来一堆长长的晦涩难懂的SQL,且性能低下,难以维...原创 2019-11-28 22:38:51 · 7676 阅读 · 4 评论 -
Navicat连接MySQL 8.0报错:ERROR 2059
问题描述:使用Navicat Premium 连接MySQL时出现如下错误:问题原因:这种情况是因为MySQL之前加密规则为mysql_native_password,在MySQL 8.0以后的加密规则为caching_sha2_password,所以需要修改登陆的用户加密规则并刷新。解决方法:win+R快捷键运行cmd,切换到mysql安装目录下的bin文件夹下mysql>...原创 2019-11-20 20:58:09 · 414 阅读 · 0 评论 -
MySQL8.0导入数据
问题描述:MySQL使用load data local infile导入数据报错:mysql> load data local infile '/path/file' into table tablename;ERROR 1148 (42000): The used command is not allowed with this MySQL version问题原因:这种情况是因为...原创 2019-11-20 20:34:07 · 5317 阅读 · 1 评论 -
MySQL Workbench数据菜单导入方法
在test01数据库中创建emp表-- 创建表mysql> create table emp( -> empno int primary key auto_increment, -> ename varchar(5) not null, -> ename varchar(5), -> mgr int, -> hir...原创 2019-11-20 19:58:06 · 1050 阅读 · 1 评论 -
MySQL随机取50条数据
问题描述:MySQL从一张表怎么随机取50条数据?解决方法:select * from table order by rand() limit 50;原创 2019-11-12 16:44:39 · 2857 阅读 · 2 评论 -
windows下如何使用zip文件安装MySQL
MySQL官网提供的windows版本有两种,一种是MSI后缀的文件,还有一种是zip结尾的压缩文件。MSI结尾的文件提供窗口交互式的安装向导,通过简单的点击鼠标就可以一步步的完成安装。zip后缀的文件是提供编译好的程序文件,只需简单配置即可使用。本文主要给大家介绍如何使用zip方式安装MySQL。1、下载并解压MySQL的zip文件根据电脑操作系统选择对应版本的文件下载后解压2、将...原创 2019-11-12 16:35:42 · 256 阅读 · 0 评论 -
设置MySQL密码时报错
问题描述:在设置MySQL密码时报错解决方法:这种情况是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:MySQL完整的初始密码规则可以通过如下命令查看:mysql> SHOW VARIABLES LIKE 'validate_password%';+--------------------------------------...原创 2019-11-12 15:43:40 · 493 阅读 · 0 评论 -
SQL语句的优化
1、where子句中不使用 != ,否则放弃索引全表扫描2、尽量避免 NULL 值判断,否则放弃索引全表扫描优化前 :select number from t1 where number is null;优化后 :在number列上设置默认值0,确保number列无NULL值select number from t1 where number=0;3、尽量避免 or 连接条件,否...原创 2019-11-12 15:33:16 · 357 阅读 · 0 评论 -
MySQL配置环境变量
在桌面选择‘计算机’,右键–>属性–>‘高级系统设置’–>‘环境变量’新建MYSQL_HOME变量,并将值设置为D:\Program Files\MySQL\MySQL Server 8.0编辑Path系统变量:在系统变量里,找到Path变量,点击“编辑”按钮,我们将;%MYSQL_HOME%\bin添加到path变量(一般放在最后面),注意如果前面有还有其他的配置,一定...原创 2019-11-12 15:28:06 · 632 阅读 · 0 评论 -
net start mysql 服务无效
问题描述:cmd中执行net start mysql 提示:服务名无效解决方法:因为net start +服务名,启动的是win下注册的服务。如果系统中并没有注册mysql到服务中,就会提示服务名无效。进入MySQL的bin目录在命令行窗口输入:mysqld –install,回车,提示:Service successfully installed,代表注册服务成功。命令行窗口输入...原创 2019-11-12 15:20:36 · 273 阅读 · 2 评论 -
MySQL导出文件报错
问题描述:从MySQL导出文件报错解决方法:这种情况是因为MySQL导出文件应该导入根目录下,可以先查看当前文件目录,然后导出文件保存到此目录下即可。show variables like '%secure%';#查看文件目录...原创 2019-11-12 15:14:03 · 968 阅读 · 0 评论