![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
悲观前行
喜欢写代码的会计
展开
-
fedsql如何实现字符与数字间转换
在sas base正常用put和input来实现char与num间的转换,在fedsql中,特别是cas中,请用inputc,inputn,cast,具体如何使用就自行搜索一下。原创 2021-07-25 00:36:11 · 110 阅读 · 0 评论 -
sas viya fedsql字符替换
cas里没有translate,可以用transtrn替代,需替换多个字符时可以嵌套。原创 2021-04-07 07:52:20 · 97 阅读 · 0 评论 -
sas viya cas使用之app调用viya服务
这过程其实分两步,第一步向服务器端索要一个token,这要用到一个可获取token的服务器身份;第二步用拿到的token,放在header里组装报文,调取具体的服务。原创 2021-04-03 08:33:53 · 181 阅读 · 0 评论 -
sas viya cas使用fedsql
fedsql适用的是99标准,所以没支持calvulated,也就是你无法在创建一个新字段的同时用新字段去计算生成其他字段或排序,推荐的方式是先计算一层新字段,再去select一次这个计算结果,为了运算速度,忍忍吧????...原创 2021-04-03 08:28:34 · 170 阅读 · 0 评论 -
sas viya cas使用之job的不同调用方式
在远程调用job过程中,我们遇到这样一个问题:异步提交的请求要等job跑完才有结果,客户体验非常差,所以开始找文档,发现并不是每次都要重新运算,只需在调用的时候为action参数赋不同的值即可,如excute表示立即运行,lastjob表示上次该job的运行结果,突然之间客户体验就上来了,但这需要在返回的json中自已配上时间戳,以确保数据过于延迟,选择性的运行job,参数看下图。方式二是我的朋友告诉我的,建一大一小的两个job,大job用于大数据量运算,安排在夜深人静没人时跑,跑完结果放在服务端,小j原创 2021-04-03 08:19:55 · 149 阅读 · 0 评论 -
sas viya cas使用之远程调用job
业务需要从app端调用viya的job,方式是get,但在studiov里运行得好好的job,在远端调用时却一直报错,把能试的办法都试了一遍还是报错,都快崩溃了,错误如下:后面实在没办法,放了两天,第三天时查看日志,发现public底下的job竟然没有问题,一下子就懂了,懂啦啦啦啦!给我放job的服务器文件夹赋权不够导致get不到job文件,赋权后就正常拿到json....原创 2021-04-03 08:01:55 · 124 阅读 · 0 评论 -
sas viya cas使用读取client端电脑上的文件
刚从sas9.4转到viya时,最想知道的是cas不支持proc import步,那我怎么读取本地电脑上的文件呢?方式一:在studiov的文件管理界面,手工点击上传后再加载到cas中。方式二:但我不想手工怎么办,这时就可以用proc http.客户端需先将拟上传的文件以ip地址的方式暴露出来,再由服务器端通过http读取,再加载到cas....原创 2021-04-03 07:50:17 · 283 阅读 · 0 评论 -
sas viya中cas使用之jobexcute
job可以实现定时任务,更重要的是支持输出json,供其他app过过get的方式调用,也就是说其他app可以调用job,进而使用cas进行大而快的数据处理。原创 2021-04-03 07:33:17 · 168 阅读 · 0 评论 -
sas viya中cas使用connect to
fedsql中使用connect to xx,这里的xx要用caslib进行定义,且最好与目标caslib使用同一个session.当你用libname进行定义时,你会发现fedsql只能运行在非cas环境,速度奇慢。代码段1:select oo.i, oo.rank, ff.onoff from connection to caslib1 ( select i, rank() over (order by j) rank from table_a ) oo, co原创 2021-04-03 07:26:41 · 349 阅读 · 0 评论 -
python计算下个季度的第一天
from datetime import *def first_day_season(date1): season=[1,4,7,10] now = date1 for i in season: if now.month<=i: print(date(now.year,i,1)) break思路:给我一个日期,我取出这个日期的月份,跟我预订的季度首月序列进行对比,第一次出现季度首月大于我取出的月份时就是最近的原创 2020-09-01 23:46:59 · 410 阅读 · 0 评论 -
python计算每月的第一天
from datetime import *def first_day_month(date1): now=date1 next=date(now.year,now.month,1)+timedelta(days=31) return date(next.year,next.month,1)思路:给我一个日期,我先找到这个日期当月的第一天,然后加31天变成下个月的日期,再找到下个月日期的第一天。...原创 2020-09-01 23:44:47 · 754 阅读 · 0 评论