
mysql
Lancer_Wu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
hive 旧版本 随机抽样查询
mysql的随机抽样查询很简单,但是对于hive来说就没那么简单了,尤其是公司的hive数据库版本特别old,导致一次次的尝试之后才发现了可用的随机抽样查询方法。当然,这是全部数据里的随机抽样,想要实现分组抽样,我是用python进行二次处理。select distinct a.字段1 , a.字段2from a left outer join con a.xxx = c.xxxw...原创 2019-04-20 16:57:22 · 172 阅读 · 0 评论 -
mysql实现去重的相关代码
之前的数据库去重一般会选择使用python的pandas,因为效率真的高也简单,不过作为练习,还是自己实现了一下使用sql语句实现的单表去重。根据单字段实现去重查出所有重复记录select * from 表名 where 字段名 in ( select 字段名 from 表名 group by 字段名 having count(字段名)>1);查出多余的记录,不查出i...原创 2019-06-20 16:21:34 · 395 阅读 · 1 评论 -
MySQL、MongoDB、Redis 数据库之间的区别
自己一直有些迷迷糊糊的,这篇文章写的挺好的,转载以帮助有需要的同学。原文地址:https://blog.youkuaiyun.com/CatStarXcode/article/details/79513425正文:NoSQL 的全称是 Not Only SQL,也可以理解非关系型的数据库,是一种新型的革命式的数据库设计方式,不过它不是为了取代传统的关系型数据库而被设计的,它们分别代表了不同的数据库设计...转载 2019-05-27 20:08:37 · 219 阅读 · 0 评论 -
mysql增加生成时间戳 和 最后修改时间戳
# 插入时间的时间戳,自动生成alter table 表名 add create_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;# 插入最后修改的时间戳,按照最后修改时间自动生成alter table cookies add update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ...原创 2019-05-11 18:38:57 · 2457 阅读 · 0 评论 -
mysql 获取最近n天的数据
有时候某些表没有日期字段,需要查看最近几天新插入的行,可以使用以下语句:# 假设查询最近7天的数据SELECT * FROM tablename where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(date);...原创 2019-05-11 18:34:08 · 2802 阅读 · 0 评论 -
mysql 删除重复项
之前爬虫写的逻辑有点错误,导致重复爬取了某些内容,全部删掉再爬也麻烦,所以写了个sql语句直接清掉重复项。delete FROM tablename WHERE 去重字段 in ( SELECT 去重字段 FROM tablename GROUP BY 去重字段 HAVING COUNT(*) > 1) and id not in ( select min(id) ...原创 2019-05-11 18:30:01 · 176 阅读 · 0 评论 -
mysql 视图生成,查询,删除
MySQL的视图有点类似于临时表,不过只能查询不能修改。创建视图create view view_1 as select * from tablename where 过滤条件;查询视图select * from view_1;删除视图drop view view_1;...原创 2019-05-11 18:14:42 · 280 阅读 · 0 评论 -
mysql 查询结果保存或创建新表 同时增加自增主键
如果表存在,则查询结果插入到表中:insert into table_1 select * from table_2;如果表不存在,则插入到新表中create table_1 select * from table_2;如果新表要增加自增id,再输入以下命令:alter table table_1 add id int not null auto_increment primary ...原创 2019-05-11 18:07:59 · 2333 阅读 · 0 评论 -
mysql id从1开始自增 解决id不连续的问题
作为一个强迫症患者,对于表格内某些行删除之后,id不连续这个问题完全无法容忍,一开始使用TRUNCATE TABLE tablename来实现id从头自增,但是这个命令同时也会清空整个表,真的是坑爹啊。后面才发现了正确的做法:alter table tablename auto_increment = 1;这个命令不会改动现有的表的内容和顺序,同时新插入行的id会先使用已删除的id,完美...原创 2019-05-11 12:13:24 · 10404 阅读 · 5 评论 -
hive mapjoin 提升连表查询的速度
当一张表比较大而一张表比较小的时候,进行join的时候使用mapjoin函数,可以提升查询速度。select /* +mapjoin(b) */ a.xxx, a.xxxfrom ainner join bon a.xxx = b.xxx;...原创 2019-04-20 16:50:11 · 617 阅读 · 0 评论 -
mysql 45道练习题
之前网上的45道mysql练习题,自己打了一遍,同时发现题目的一些问题,并自己想了一些变种,分享一下建立学生表信息studentCREATE TABLE student(sno VARCHAR(20) NOT NULL PRIMARY KEY,sname VARCHAR(20) NOT NULL,ssex VARCHAR(20) NOT NULL,sbirthday datetime,...原创 2019-04-20 16:43:51 · 990 阅读 · 0 评论 -
mysql 分组排序并取前n条数据
通用模板:select a.*from(select t1.*,(select count(*)+1 from 表 where 分组字段=t1.分组字段 and 排序字段<t1.排序字段) as group_idfrom 表 t1) awhere a.group_id<=3 # 假设取前3条...转载 2019-04-28 20:05:02 · 5733 阅读 · 0 评论 -
自己整理的python对mysql的常用操作,封装成函数直接调用
把自己平常经常使用的对mysql操作的函数整理了一下,主要是使用dataframe来操作,同时封装了数据库的连接,提交等操作,这样只需要传入参数和数据就可以了。分享给有需要的朋友,节约造轮子的时间。from sqlalchemy import create_engineimport pymysqlimport pandas as pd'''author:LancerWuemail:w...原创 2019-05-02 15:25:35 · 2365 阅读 · 0 评论 -
hive 两表合并的坑 union all
mysql上两表合并有很多种写法,但是受限于公司的史前hive数据库版本的问题,很多很多的骚操作都排不上用场,比如用exists判断是否存在于子表,where判断在另外一张表是否存在等,只能用union all合表。请注意,必须是union all,只用union是会失败的……select a.xxx, a.xxx from a left outer join con a.xxx =...原创 2019-04-20 17:05:00 · 10146 阅读 · 0 评论 -
mysql 统计连续出现 最大次数
适用场景:统计连续打卡,签到以及访问等情况的统计。结果为两列,一列是要统计的字段列,另一列是最大连续记录。select * from ( select aa.字段名, max(rownum) maxrow from ( select bb.id, bb.字段名 if((bb.字段名=@pname) , @row:=@row+1 , @row:=1) rownum, #...原创 2019-07-17 16:29:41 · 1870 阅读 · 1 评论