首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

(白酒例)

一、简介 玩过几个月基金,所以今天闲着没事看能不能编程实现-从采集基金数据然后进行分析 这里以白酒例,相信玩过基金的人都知道,白酒这个基金上过几次热搜,在基金排行榜也是无人不知,所以选择了白酒例(.../mutiy.png") plt.show() 效果图1 [format,png] 分析: 通过上面的条形图可知,最近几个月月末值都大于月初值,说明这几个月都是属于盈利状态,尤其是2020-12...而2020-8月是亏损最大,从整体上来看,整年月份整合下来,整体还是盈利。...2019-7月是波动最小一个月,2020-7月是波动最大一个月,都是7月,哈哈哈,真巧。...4、总结 以上分析是以白酒例(代号161725),通过改变代号可以通用分析其他基金。 通过改变size可以分析几个月,近一年,近几年基金数据。

28400

CSDN是怎么实现用户签到,统计签到次数,连续签到天数等功能微服务

key 格式 user:sign:userid:yyyyMM,value 则采用长度4个字节(32位)位图(最大月份只有31天)。位图每一位代表一天签到,1表示已签,0表示未签。...与传统数据库存储空间对比: 例如 user:sign:98:202212 表示用户 id=98 用户在2022年12月签到记录。...Bitmaps支持最大位数是232位。...(SETBIT) 返回用户连续签到次数(BITFIELD key GET [u/i] type offset value, 获取从用户从当前日期开始到1号所有签到状态,然后进行位移操作,获取连续签到天数...查询当月签到总天数5天: 获取用户签到明细情况 获取用户某月签到情况,默认当前月,返回当前月所有日期以及该日期签到情况 签到控制层 SignController /** *

2.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

窗口函数到底有多「神奇」?

题目一 表mall_rate记录了不同商户费率变化信息,要求按照时间轴顺序,取出费率发生了状态变化数据行。表及相关数据如下: ? ?...解题思路: lag或lead函数可以将上一行或下一行字段内容获取到本行,这样便可以进行某些字段是否发生变化比较,从而进行状态是否变化比较,有些题目中会出现一些如“连续记录”,“沿时间轴”,“查询*...*上次记录时间”,“查询**n次记录时间”等字眼,这些关键字预示着可能会需要用到lag或lead函数去获取上n行或下n行字段内容到本行,进行数据选取或比较。...知识点归纳: LAG(col,n,default)用于统计窗口内往上第n行值,第一个参数列名,第二个参数往上第n行(可选,默认为1),第三个参数默认值(当往上第n行为null,取默认值,如不指定...解题思路: 排序,取20%。以前我有过一种操作是先使用窗口函数row_number()进行排序,搞一个rank,然后取最大rank20%作为限制条件,取到20%。

75120

Oracle基础 各种语句定义格式

一组值最大、 least一组值最大、 add_months在一个日期上加上或减去指定月份、 last_day返回指定月份最后一天日期、 next_day返回下一个指定日期第一天、...方差,忽略null 6. rowin是存储每条记录实际物理地址,对记录访问是基于rowid,这是存取表数据最快方法。...] 删除子记录记录相应值null constraint emp1_foreign foreign key(deptno) references dept1(deptno) [on delete...count:集合元素个数 delete:删除集合中所有元素 delete(x):删除下标x元素 delete(x,y):删除下标从x到y元素 extend:在集合末尾添加一个元素...drop:删除一个数据库对象 start:打开数据库触发触发器,在事件后触发 shutdown:关闭数据库触发触发器,在事件触发 logon:当一个会话建立时触发,事件触发 logoff

84910

抖音面试题:送你一个万能模板,要吗?

连续问题万能模板 在《拼多多面试题:如何找出连续出现N次内容?》里讲过遇到“连续问题”如何解决,并送出了一个万能模板,模板使用是窗口函数解决连续问题。 image.png 2....窗口函数 窗口函数lead使用方法: image.png 默认值是指:当向上N行或者向下N行值,如果已经超出了表行和列范围,会将这个默认值作为函数返回值,若没有指定默认值,则返回Null。...窗口函数lead可以获取每个字段后面的第n个值,并生成新一列。 而这道题描述“用户连续登陆”“连续”可以理解用户当前登陆日期与本月下一次登陆日期相差一天。...我们可以先用窗口函数lead获取“用户当月下一个登陆日期”: image.png image.png 当“日期”是该用户在当月最后一天登陆记录当月最后登陆日期”,如果不进行设置,将会返回Null...image.png image.png “上一个登陆顺序”Null,用0代替(使用coalesce函数),那么“每个月登陆顺序”减去“上一个登陆顺序”就是本次连续登陆天数。 4.

1K00

抖音面试题:遇到连续问题怎么办?

连续问题万能模板 我在《拼多多面试题:如何找出连续出现N次内容?》里讲过遇到“连续问题”如何解决,并送出了一个万能模板,模板使用是窗口函数解决连续问题。...窗口函数lead可以获取每个字段后面的第n个值,并生成新一列。 而这道题描述“用户连续登陆”“连续”可以理解用户当前登陆日期与本月下一次登陆日期相差一天。...') over(partition by month(日期), 用户id order by 日期) as 用户当月下一个登陆日期 from 用户登陆记录表; 当“日期”是该用户在当月最后一天登陆记录...“当月最后登陆日期”,如果不进行设置,将会返回Null,不利于理解。...”Null,用0代替(使用coalesce函数),那么“每个月登陆顺序”减去“上一个登陆顺序”就是本次连续登陆天数。

99720

Oracle存储过程基本语法介绍

2, 变量带取值范围,后面接分号  3, 在判断语句最好先用count(*)函数判断是否存在该条操作记录  4, 用select 。。。into。。。...因为在Oracle 本是没有数组概念,数组其实就是一张  -- 表(Table), 每个数组元素就是表一个记录,所以遍历数组就相当于从表第一条记录开始遍历  for i in 1.....本是没有数组概念,数组其实就是一张表(Table), 每个数组元素就是表一个记录。 ...使用数组,用户可以使用Oracle 已经定义好数组类型,或可根据自己需要定义数组类型。 ...游标的使用 Oracle Cursor 是非常有用,用于遍历临时表查询结果。

3.7K50

oracle存储过程语法

因为在Oracle 本是没有数组概念,数组其实就是一张 — 表(Table), 每个数组元素就是表一个记录,所以遍历数组就相当于从表第一条记录开始遍历 for i in 1..varArray.count...本是没有数组概念,数组其实就是一张表(Table), 每个数组元素就是表一个记录。...使用数组,用户可以使用Oracle 已经定义好数组类型,或可根据自己需要定义数组类型。...游标的使用 Oracle Cursor 是非常有用,用于遍历临时表查询结果。...,parctice,comment 通过存储过程自动计算出每位学生总成绩和平均成绩,同时,如果学生在课外课程获得评价A ,就在总成绩上加20 分。

86530

oracle 常用函数

-- LAST_DAY(d) - 返回当月最后一天 SELECT SYSDATE, LAST_DAY(SYSDATE) FROM DUAL; ROUND(d[,fmt]) 与 ROUND 对应函数...如果 fmt “MONTH”则舍入到某月 1 日,即月舍去,后半月作为下一月。 默认为“DDD”,即月中某一天,最靠近天,前半天舍去,后半天作为第二天。...UNION 用来求两个集合并集,并去掉重复值 UNION ALL 用来求两个集合并集 INTERSECT 用来求两个集合交集,并去掉重复值 MINUS 用来求第一个集合存在,而第二个集合不存在记录...greatest 函数和 least函数示例代码 求多列最大值,oracle greatest 函数; 求多列最小值,oracle least 函数。...在比较,OracIe会自动按表达式数据类型进行比较,以expr_1数据类型为准。 四舍五入 Oracle 提供了以下四个函数用来做四舍五入。

1.3K11

TP5框架实现签到功能方法分析

具体功能: 1、记录最近一次签到时间 2、每次签到都会添加15积分 3、有连续签到记录 CREATE TABLE `sp_sign` ( `id` int(11) NOT NULL AUTO_INCREMENT...DEFAULT '0' COMMENT '当月签到给积分', `one` varchar(255) DEFAULT NULL COMMENT '当月签到日期,用“,”隔开', `two` varchar...上次签到日期与本次签到日期月份不一样 { $oldtime = $times[0]['times']; $onetime=date("Y-m-d H:i:s", strtotime("-1 month")); //获取...1个月时间,获取格式2016-12-30 13:26:13 $twotime=date("Y-m-d H:i:s", strtotime("-2 month")); //获取2个月时间 $threetime...=date("Y-m-d H:i:s", strtotime("-3 month")); //获取3个月时间 $rs = Db::name('sign')- where('userid',$userid

67320

Oracle面试题及答案整理,速速收藏

,但是你试一下insert 一条记录然后用别的连接登上去select,记录是空,明白了吧。...,当中断会话ORACLE将截断表。...SGA是Oracle一个实例分配一组共享内存缓冲区,它包含该实例数据和控制信息。SGA在实例启动被自动分配,当实例关闭被收回。数据库所有数据操作都要通过SGA来进行。...SGA内存根据存放信息不同,可以分为如下几个区域: a、Buffer Cache:存放数据库数据库块拷贝。它是由一组缓冲块所组成,这些缓冲块所有与该实例相链接用户进程所共享。...b、日志缓冲区Redo Log Buffer:存放数据操作更改信息。它们以日志项(redo entry)形式存放在日志缓冲区。当需要进行数据库恢复,日志项用于重构或回滚对数据库所做变更。

3.2K20

面试官嘲笑我,这你都不会?

redis字符串限制最大为512M,所以位图中最大可容纳2^32(42亿)个不同位。 可以将位图看做是一个bit数组,数组下标就是偏移量 它优点:内存开销小,效率高且操作简单。...bitpos指令:bittops key bit [start] [end] 获取位图中第一个值bit二进制位位置;时间复杂度: O(n),其中n位图包含二进制位数量。...3、位数组会自动伸展扩充,offet偏移量设置超出现现有的内容范围,确保value值在指定偏移量上,会通过扩容,空白位置用0填充补上, 4、offet参数值必须大于或者等于0,小于2^32(字符串最大值是...3、不能过度去依赖缓存,一旦缓存出问题或者崩盘,数据丢失都是一个大问题,用户反馈投诉极具增加 4、用户存在质疑,可以快速通过落地数据进行排查问题 5、缓存出现问题,可以通过数据库记录进行数据回源...④ 获取用户当月打卡总数 /** * @Desc 获取用户当月打卡总数 * @param string $date * @return int */ public function getSumSignCount

52150

「3306π」沪江从 SQL Server 到 MySQL(二):在线迁移,空中换发动机

一个物化视图就是主库在某一个时间点上复制,可以理解是这个时间点上 Snapshot。当主库数据持续更新,物化视图更新则是要通过独立批量更新完成,称之为 refreshes。...Oracle 基于物化视图,就可以完成增量数据获取,从而满足阿里数据在线迁移。将这个技术问题泛化一下,想做到在线增量迁移需要有哪些特性?...我们得到如下结论(针对源数据库): 增量变化:支持增量获得增量数据库变化 延迟:获取变化数据这个动作耗时需要尽可能低 幂等一致性:变化数据消费应当做到幂等,即不管目标数据库已有数据什么状态,都可以无差别消费...apple4 可以看到 Change Table 已经如实记录了我们操作内容,注意 __$operation代表了数据库操作: 1 删除 2 插入 3 更新数据 4 更新后数据 根据查出来数据,我们可以重现这段时间数据库操作...最佳实践 数据库迁移在去 Windows ,是最不容得出错环节。应用是无状态, 出现问题可以通过回切较快地回滚。但数据库迁移就需要考虑周到,做好资源准备,发布流程,故障预案处理。

1.3K31

Oracle必知100道问题

select username from v$session; 17.数据表字段最大数是多少? 表或视图中最大列数 1000。 18.怎样查得数据库SID ?...20.unix 下怎么调整数据库时间? su -root date -u 08010000 21.在ORACLE TABLE如何抓取MEMO类型栏位资料记录?...是一本sql使用手册,包括语法、函数等等,oracle官方网站文档中心有下载。 58.如何查看数据库状态?...64.如何查出一条记录最后更新时间? 可以用logminer 察看。 65.如何在PL/SQL读写文件? UTL_FILE包允许用户通过PL/SQL读写操作系统文件。...设置方法:把这个变量值设置这个系统上所有Oracle实例init.ora最 大那个processes那个值加10。

3.4K21

高频错误:ORA-01555深入剖析

在一个银行系统(一般涉及到钱问题对并发事务要求是最严格^_^),会计正在统计当月某地区个人存款总额,她这个操作,在后台肯定要产生一条SQL语句,对这一地区所有用户存款额作SUM(),我们假设这一操作产生语句...下面就看下Oracle如何实现一致性读: 当Oracle更新数据块(Data Block Oracle中最小存储单位),会在两个地方记录下这一更新动作。...以上面的例子例,A在读取到Y帐户,发现这条记录已经被修改了,于是就从回滚段读取保留回滚数据,最终就能正确得到T1正确存款总额了。...我们知道,当Oracle更新数据块,会在回滚段(UNDO Segment)记录下这一更新动作。...所以,看到后面的Lck位(行级锁数目)1(因为我们修改了1条记录)。 再看每条记录行级锁对应Itl条目lb:都是0x1。即Itl第一条。

1.7K80

oracle基本面试题_mongodb面试题

如何使用Oracle游标? 1). oracle游标分为显示游标和隐式游标 2)....冷备份不足: 1).单独使用时,只能提供到“某一间点上”恢复。 2).在实施备份全过程,数据库必须要作备份而不能作其它工作。也就是说,在冷备份过程,数据库必须是关闭状态。...解释什么是死锁,如何解决Oracle死锁?...可以简单将视图理解sql查询语句,视图最大好处是不占系统空间 2. 一些安全性很高系统,不会公布系统表结构,可能会使用视图将一些敏感信息过虑或者重命名后公布结构 3....如事务1在表A行记录#3有一排它锁,并等待事务2在表A记录#4排它锁释放,而事务2在表A记录行#4有一排它锁,并等待事务; 1在表A记录#3排它锁释放,事务1与事务2彼此等待,因此就造成了死锁

3.3K20
领券