随笔分类 -  SQL

Sql写得好15K just soso
摘要:DDL DDL is Data Definition Language statements. Some examples:数据定义语言,用于定义和管理SQL数据库中的所有对象的语言1.CREATE - to create objects in the database 创建2.ALTER - al 阅读全文
posted @ 2020-10-28 14:11 wqbin 阅读(663) 评论(0) 推荐(0) 编辑
摘要:概述 MySQL中临时表主要有两类,包括外部临时表和内部临时表。 临时表 内部临时表:内部临时表主要有两类 一类是information_schema中临时表 另一类是会话执行查询时,如果执行计划中包含有“Using temporary”时,会产生临时表 外部临时表:外部临时表是通过语句create 阅读全文
posted @ 2020-07-01 14:20 wqbin 阅读(6244) 评论(0) 推荐(3) 编辑
摘要:在mysql中,用SQL语句增删改字段,重命名替换字段 语法 ALTER TABLE 表 {ADD ADD{COLUMN 字段类型 [ (字长)] [NOT NULL] [CONSTRAINT 索引 ] | ALTER COLUMN 字段类型 [(字长)] | rename COLUMN to CO 阅读全文
posted @ 2020-05-28 11:59 wqbin 阅读(4875) 评论(0) 推荐(0) 编辑
摘要:简单了解 import MySQLdb #建立数据库连接 connect = MySQLdb.connect(host=host, user=dbuser, passwd=dbpass, db=dbname, charset=charset) #cursor = connect .cursor() 阅读全文
posted @ 2020-04-10 19:51 wqbin 阅读(415) 评论(0) 推荐(0) 编辑
摘要:一般的解说是 utf8_general_ci 速度较快,utf8_unicode_ci 准确性较好 … 但快在那里,又好在什么地方呢? 首先就其准确性说,这世界上有无数种文字,除了通用的英文使用我们较熟悉的 A-Z 字符外,还有很多种近似的写法用于法文、德文、俄文等等… 光是一个 A 字就有数十种不 阅读全文
posted @ 2020-01-09 12:36 wqbin 阅读(1041) 评论(0) 推荐(0) 编辑
摘要:Using join buffer (Block Nested Loop) msyql的表连接算法 走索引之后 mysql> explain SELECT a.custid, b.score, b.xcreditscore, b.lrscore FROM( SELECT DISTINCT custi 阅读全文
posted @ 2019-12-31 22:09 wqbin 阅读(11647) 评论(0) 推荐(0) 编辑
摘要:问题发现 我认为一条很简单的SQL然后跑了很久,明明我已经都建立相应的索引,逻辑也不需要优化。 SELECT a.custid, b.score, b.xcreditscore, b.lrscore FROM ( SELECT DISTINCT custid FROM sync.`credit_ap 阅读全文
posted @ 2019-12-31 15:21 wqbin 阅读(35808) 评论(2) 推荐(3) 编辑
摘要:SSL:(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协议和SSL握手协议。 TLS:(Transp 阅读全文
posted @ 2019-12-29 22:57 wqbin 阅读(10132) 评论(0) 推荐(0) 编辑
摘要:索引前言 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。 索引分为聚簇索引和非聚簇索引两种,聚簇索引是按照数据存放的物理位置为顺序的,而非聚簇索引就不一样了;聚簇 阅读全文
posted @ 2019-12-17 11:36 wqbin 阅读(772) 评论(0) 推荐(1) 编辑
摘要:简介:explicit_defaults_for_timestamp 系统变量决定MySQL服务端对timestamp列中的默认值和NULL值的不同处理方法。 此变量自MySQL 5.6.6 版本引入,分为全局级别和会话级别,可动态更新,默认值为OFF。本文主要介绍该参数打开和关闭情况下对times 阅读全文
posted @ 2019-12-10 16:08 wqbin 阅读(8609) 评论(0) 推荐(0) 编辑
摘要:一、MySQL的变量分类 MySQL变量一共分为两大类:用户自定义变量和系统变量。如下: 用户自定义变量 局部变量 会话变量 系统变量 会话变量 全局变量 局部变量 局部变量一般用于SQL的语句块中,比如存储过程中的begin和end语句块。其作用域仅限于该语句块内。生命周期也仅限于该存储过程的调用 阅读全文
posted @ 2019-11-29 15:46 wqbin 阅读(2559) 评论(0) 推荐(0) 编辑
摘要:1.前言 本文使用"发现"二字,是表示我作为一个用过mysql oracle hive以及各种nosql数据库的男人,竟然发现有一个如此常识的数据库我竟然不知道。 在配置airflow的时候,我想当然的认为airflow的元数据应该储存在像是mysql类型的数据库中,我从来没有安装过sqlite,但 阅读全文
posted @ 2019-11-26 21:28 wqbin 阅读(421) 评论(0) 推荐(0) 编辑
摘要:MySql数据库查询时,使用group_concat报错“Row XXX was cut by GROUP_CONCAT()”,查了下是因为group_concat有个最大长度的限制,超过最大长度就会被截断掉, 我们检查一下mysql的全局环境变量: mysql> SELECT @@global.g 阅读全文
posted @ 2019-11-25 14:13 wqbin 阅读(2746) 评论(0) 推荐(0) 编辑
摘要:TEXT类型一般分为 TINYTEXT(255长度)、TEXT(65535)、 MEDIUMTEXT(int最大值16M),和LONGTEXT(long最大值4G)这四种,它被用来存储非二进制字符集,二进制字符集使用blob类型的字段来存储。 对于text列,插入时MySQL不会对它进行填充,并且s 阅读全文
posted @ 2019-11-25 14:11 wqbin 阅读(88768) 评论(1) 推荐(4) 编辑
摘要:概述 Mysql从5.7.8版本开始支持JSON字段,可以高效的处理JSON文档。相比字符串字段,JSON字段有下面的几处优势: 自动的校验JSON格式,无效的文档会产生错误 优化的存储格式(结构化的二进制格式),访问数据时不需要额外的解析,可能通过键或者数组索引来直接该问数据,而不是读取整个字段。 阅读全文
posted @ 2019-11-22 22:26 wqbin 阅读(681) 评论(0) 推荐(0) 编辑
摘要:问题 1. 将DataFrame数据保存到mysql后,添加索引出现错误提示: BLOB/TEXT column used in key specification without a key length 2. mysql> CREATE INDEX credit_creditchannel_pa 阅读全文
posted @ 2019-11-21 10:13 wqbin 阅读(2573) 评论(0) 推荐(0) 编辑
摘要:show full processlist; //列出当前的操作process,看到很多处于waiting的process,说明已经有卡住的proces。 这里我们看到是sending data的这条语句卡住了mysql + + + + + + + + + + + + | Id | User | H 阅读全文
posted @ 2019-11-20 20:34 wqbin 阅读(2010) 评论(0) 推荐(0) 编辑
摘要:查看所有mysql数据库表和索引大小 mysql查看当前所有的数据库和索引大小 select table_schema, concat(truncate(sum(data_length)/1024/1024,2),' mb') as data_size, concat(truncate(sum(in 阅读全文
posted @ 2019-11-19 10:52 wqbin 阅读(1506) 评论(0) 推荐(0) 编辑
摘要:一般都是连接mysql执行sql语句: 在命令行下输入 mysql -h localhost -u root -p回车,然后输入密码即可; 或直接运行mysql自带的连接工具,然后输入密码即可. 执行sql脚本,可以有2种方法: 第一种方法: 在命令行下(未连接数据库),输入 mysql -h lo 阅读全文
posted @ 2019-11-18 15:28 wqbin 阅读(2839) 评论(0) 推荐(1) 编辑
摘要:方法一: 可以看到版本是5.7.26 方式二 : 进入mysql,输入 select version(); mysql> select version(); 方法三: mysql -V 阅读全文
posted @ 2019-11-13 22:22 wqbin 阅读(182) 评论(0) 推荐(0) 编辑