
学习日记
脑阔疼啊脑阔疼
这个作者很懒,什么都没留下…
展开
-
mysql学习—三值逻辑和NULL
1-3 三值逻辑和NULLSQL 布尔型-true false unknown真值优先级and:false > unknown > trueor : true > unknown > falsenull 不是值,不能对其使用谓词(is null)01 排中律不成立排中律不成立: 把命题和它的否命题通过“或者”连接而成的命题全部都是真命题(古典逻辑学)/...原创 2019-01-10 21:14:29 · 450 阅读 · 0 评论 -
Hive学习—HiveQL:数据定义
第4章 HiveQL:数据定义HiveQL可能和MySQL语句接近,但是两者还是存在显著差异。Hive不支持行级插入操作、更新操作和删除操作。Hive也不支持事务。4.1 Hive 中的数据库--创建数据库CREATE DATABASE financials--查看Hive中包含的数据库SHOW DATABASES--使用正则匹配筛选出需要的数据库SHOW DATABASES LI...原创 2019-01-27 00:39:02 · 251 阅读 · 0 评论 -
Hive学习—数据操作
第5章 HiveQL:数据操作第4章主要介绍如何创建表,随之而来的下个问题即,如何装载数据到这些表中。本章主要讨论Hive查询语言中,向表中装载数据和从表中抽取数据到文件系统的数据操作语言部分。5.1 向管理表中装载数据既然H没有行级别的数据插入、数据更新和删除操作,那么往表中装载数据的唯一途径就是使用一种“大量”的数据装载操作。LOAD DATA LOCAL…拷贝本地数据到位于分布式文...原创 2019-01-27 10:52:34 · 205 阅读 · 0 评论 -
SQL学习—EXISTS谓词的用法
1-8 EXISTS谓词的用法SQL中的谓词逻辑SQL的基础理论:集合论谓词逻辑理论篇谓词:如"=、<、>、BETWEEN、LIKE、IN、IS NULL"等。谓词逻辑提供谓词为了判断命题的真假。在关系数据库里,表中的一行可以看作是一个命题。表常常被认为是行的集合,但从谓词逻辑的观点看,可以认为是命题的集合。数据库这种叫法有点名不副实,它存储的与其说是数据,还不如说...原创 2019-01-16 17:20:47 · 537 阅读 · 0 评论 -
Hive学习—HiveQL:查询
第6章 HiveQL:查询6.1 SELECT…FROM语句选择的列是集合数据类型时,Hive会使用Json语法应用于输出。--数组类型hive->SELECT name,subordinates FROM employees;John Doe {"Mary Smith","Todd Jones"}--MAP类原创 2019-02-05 11:08:50 · 1111 阅读 · 0 评论 -
Hive学习—hive函数学习
hive函数学习一、关系运算:=、<>、<、>、<=、>=、IS NULL、IS NOT NULL、LIKE、RLIKE、REGEXP其中:RLIKE语法: A RLIKE B操作类型: strings描述: 如果字符串A或者字符串B为NULL,则返回NULL;如果字符串A符合JAVA正则表达式B的正则语法,则为TRUE;否则为FALSE。举例:...原创 2019-02-05 15:57:50 · 297 阅读 · 0 评论 -
Hive学习—HiveQL:视图 & 索引 & 模式设计
第7章 HiveQL:视图** 7.1 使用视图来降低查询复杂度**** 7.2 使用视图来限制基于条件过滤的数据**** 7.3 动态分区中的视图和map类型**第8章 HiveQL:索引第9章 模式设计** 9.1 按天划分的表**** 9.2 关于分区**HDFS用于设计数百万的大文件,而非数十亿的小文件。使用过多的分区可能导致的问题是会创建大量的非必须的Hadoop文件和文...原创 2019-02-05 22:45:43 · 243 阅读 · 0 评论 -
Hive学习—调优&其他文件格式和压缩方法&开发&函数
第10章 调优HiveQL是一种声明式语言,用户会提交声明式的查询,而Hive会将其转换成MapReduce job。**10.1 使用EXPLAN **10.2 EXPLAN EXTENDED10.3 限制调整10.4 JOIN优化将最大的表放置在JOIN语句的最右边。如果所有表中有一个表足够小,是可以完成载入到内存中,那么Hive可以执行一个map-side JOIN,这样可以减...原创 2019-02-06 21:21:21 · 333 阅读 · 1 评论 -
python学习——python编程从入门到实践(5)
第5章 if 语句课后题#5-1car='subaru'print("Is car=='subaru'?I predict TRUE")print (car == 'subaru')print("\nIs car == 'audi'?I predict False")print(car=='audi')#5-2str1='Sunday'str2='sunday'print...原创 2019-02-19 22:45:10 · 182 阅读 · 0 评论 -
python学习——python编程从入门到实践(6)
第 6 章 字典课后题#6-1user = { 'first_name':'marle', 'last_name':'curle', 'age':25, 'city':'Beijing',}print(user)#6-2favorite_numbers = { 'jen':2, 'sarah':5, 'edward':7,...原创 2019-02-19 23:14:00 · 202 阅读 · 0 评论 -
Hive学习—数据类型和文件格式
第3章 数据类型和文件格式Hive 所支持的基本数据类型。基本数据类型数据类型长度例子TINYINT1byte20SMALINT2byte20INT4byte20BIGINT8byte20BOOLEANtrue 或者 falseTRUEFLOAT单精度浮点数3.14159DOUBLE双精度浮点数3.141...原创 2019-01-26 22:03:44 · 179 阅读 · 0 评论 -
Hive学习-基础知识
第1章 基础知识1.1 Hadoop 和 MapReduce 综述MapReduce 来自于两个基本的数据转换操作:map过程和reduce过程。一个map操作会将集合中的元素从行索引的形式转换成kv对。输入的键是行索引,输出的键是字段名。在MapReduce计算框架中,某个键的所有键-值对都会分发到同一个reduce操作中。也就是这个键和这个键所对应的所有值都会传递给同一个Reducer。...原创 2019-01-25 18:38:48 · 150 阅读 · 0 评论 -
mysql学习-having子句
1-4 having 子句寻找缺失的编号a) 进行升序或降序排序b) 循环比较每一行和下一行的编号—查询是否连续/* 如果有查询结果,说明存在缺失的编号 */SELECT '存在缺失的编号' AS gap FROM SeqTblHAVING COUNT(*) <> MAX(seq);—查询缺失编号的最小值/* 查询缺失编号的最小值 */SELECT MIN(s...原创 2019-01-06 22:51:16 · 325 阅读 · 0 评论 -
mysql学习—外连接的用法
外连接的用法用外连接进行行列转换(行-&gt;列):制作交叉表三种方法:(1)外连接C0为主表,依次对C1~C3进行外连接。如果某员工学习过某课程,课程出现姓名,否则为null。最后使用case表达式转换为’o’。/* 水平展开求交叉表(1):使用外连接 */SELECT C0.name, CASE WHEN C1.name IS NOT NULL THEN '○' EL...原创 2019-01-07 23:58:19 · 1132 阅读 · 0 评论 -
SQL学习—优化SQL查询性能
1-11 让SQL飞起来使用高效的查询参数是子查询时,使用EXISTS代替IN。两个代码对比:--慢SELECT *FROM Class_AWHERE id IN (SELECT id FROM Class_B)--快SELECT *FROM Class_AWHER...原创 2019-01-23 18:04:09 · 181 阅读 · 1 评论 -
SQL学习—用关联查询比较行与行
1-6 用关联子查询比较行与行增长、减少、维持现状业务场景:需要用到行间数据比较,使用时间序列的表进行时间序列分析。假设有下面的一张记录了某个公司的营业额的表Sales使用SQL输出与上一年相比营业额是增加还是减少,抑或持平。思路:01 按年份递增的顺序排序02 循环地将每一行与前一行的“sale"列进行比较面向集合的方式,在表Sales的基础上,再加一个存储了上一个数据的集合(S2)...原创 2019-01-13 21:29:41 · 721 阅读 · 3 评论 -
mysql学习—CASE表达式
1-1 CASE表达式CASE表达式概述注意事项:(1)统一各分支返回的数据类型(2)不要忘了写END(3)养成写ELSE子句的习惯/* 把县编号转换成地区编号(1) */SELECT CASE pref_name WHEN '德岛' THEN '四国' WHEN '香川' THEN '四国' WHEN '...原创 2019-01-08 23:59:29 · 536 阅读 · 0 评论 -
SQL—用SQL进行集合运算
1-7 用SQL进行集合运算注意事项01 SQL能操作具有重复行的集合,可以通过ALL支持。SQL的集合运算提供了允许重复和不允许重复的两种用法。如果直接使用UNION或INTERSECT,结果里就不会出现重复的行。如果想在结果里留下重复行,可以加上ALL,写作UNION ALL。02 集合运算符有优先级INTERSECT比UNION和EXCEPT优先级更高。03 各个 DBMS 提供...原创 2019-01-15 00:40:44 · 1257 阅读 · 1 评论 -
SQL学习—用SQL处理数列
1-9 用SQL处理数列生成连续编号通过对两个Digits集合求笛卡尔儿积而得出0~99的数字。-- 求连续编号(1):求0~99 的数SELECT D1.digit + (D2.digit * 10) AS seqFROM Digits D1 CROSS JOIN Digits D2ORDER BY seq求全部的缺失编号/* 动态地指...原创 2019-01-20 14:31:41 · 564 阅读 · 0 评论 -
mysql学习—自连接的用法
1-2 自连接的用法可重排列、排列、组合应用场景:假设一张存放了商品名称及价格的表,表里有“苹果、橘子、香蕉”三条记录。在生成用于查询销售额的报表时,需要获取这些商品的组合。组合:分为有顺序的有序对 <1,2> 和 无顺序的无序对 {1,2}。分别对应“排列”和“组合”(1)可重排列通过交叉连接生成笛卡尔积,可以得到有序对/* 用于获取可重排列的SQL语句 */SELEC...原创 2019-01-09 20:14:14 · 5621 阅读 · 1 评论 -
SQL学习—HAVING子句又回来了
1-10 HAVING子句又回来了本节 主要学习HAVING子句的应用技巧,“调查集合自身性质”应用场景:查找可以出勤的队伍。即队伍里所有队员都处于“待命”状态。(1)使用NOT EXISTS 表达式/* 用谓词表达全称量化命题 */SELECT team_id, member FROM Teams T1 WHERE NOT EXISTS (SELECT * ...原创 2019-01-20 23:24:58 · 274 阅读 · 0 评论 -
python学习——python编程从入门到实践(7)
第 7 章 用户输入和while循环课后题# 7-1message = input("What kind car do you need? ")print("Let me see if I can find you a "+message)#7-2message = input("How many people have the dinner? ")message = int(m...原创 2019-02-20 21:33:05 · 207 阅读 · 0 评论