//什么都别说,先看我的入库代码!
//下面这句是导入表,有了这句就可以select啦
system "l /mnt/kdb_data1/SpotDB"
//下面这句是入库的表的物理路径
dir:`:/mnt/kdb_data1/SpotDB;
//下面这句是包含很多csv的根目录
filePath:`:/home/data/prod_script/daily/zjhscript/egg/eggSpotDataTool/;
/ filePath:`:/home/data/prod_script/daily/zjhscript/egg/eggSpotDataTool/egg_index_20160803.csv;
//下面这句是列举出目录下的所有的文件
pp:key filePath;
//下面这句从目录列举文件中选出符合条件的csv
pp:pp where (string pp) like "egg_index_*.csv";
//下面这句是把根目录和文件名拼接成绝对路径注意,sv前面有个空格才是`,最后转化为·list
filePathList:raze {` sv filePath, x } each pp;
     
//day:raze {"D"$8#-12#string x} each pp;
//joint the table in tb
//tb: ("dsiif"; enlist ",") 0:filePath
//下面这句是逐一读取csv拼成tbl
tb: raze {("dsiif"; enlist ",") 0: x} each filePathList;
//下面这句是sql语句,选出几列
tb: select TRADE_DT:date,Area:area,IsProductionArea:isProductionArea,IsRedBigEgg:isRedBigEgg,PriceAvg:priceAvg from tb;
//下面这句是选出时间
tradingDays:exec distinct TRADE_DT from tb;
savekdb:{[day] 
// 输出常量day这个字符串
    1 "day:";
// 输出变量day
    0N! day;
// sv拼接symbol,最后一一个`$""代表/
    dbdir:` sv dir,`$string day,`EggSpotIndex,`$"";
    1 "dbdir:";
    0N! dbdir;
    dtb:select from tb where TRADE_DT=day;
// 入库
    result: dbdir set .Q.en[hsym dir] update `p#Area from `Area`TRADE_DT xasc dtb;
    } each tradingDays;
   
select count i by TRADE_DT from EggSpotIndex
bb:select from EggSpotIndex

好了,这就是今天写的一点q代码,可以做一个小demo,进行参考

下面一个删除数据的demosystem "l /mnt/kdb_data1/ModelAnalysisTemp";
/ meta SimFutures
/ select from SimFutures where date=2016.07.07;
/ L:exec date from select distinct date from SimFutures;
/ select count  i from SimFutures where date=2016.06.08, day_night = 0;
/ kss:{
/    d:L x;
/    data: select from SimFutures where date=d, strategy<>`hi31;
/    data2:select from  SimFutures where date=d, day_night=1,strategy=`hi31,product=`dli;
/    data,:data2;
/    data:delete date from data;
/    data:`exch`product xasc data;
/    data:update `p#exch,`p#product from data;
/    dbdir:` sv `:/mnt/kdb_data1/ModelAnalysisTemp,(`$string d),`SimFutures,`$"";
/    dbdir set .Q.en[`:/mnt/kdb_data1/ModelAnalysisTemp]   data;
/    show d;
/    };

select distinct exch from SimFutures

deleteNightData:{
    [d]
    0N! "date:", (string d);
// 选出那一天的所有数据
    data: select from SimFutures where date=d;
//选出那一天需要删除的数据后剩下的数据,统计一下是不是对的
    data: delete from data where day_night = 0,exch=`shfe;
    data: delete date from data;
    data:`exch`product xasc data;
    data:update `p#exch,`p#product from data;
    0N! count data;
    dbdir:` sv `:/mnt/kdb_data1/ModelAnalysisTemp,(`$string d),`SimFutures,`$"";
    dbdir set .Q.en[`:/mnt/kdb_data1/ModelAnalysisTemp]   data;
    show d
    };
TD:(2016.08.02);
deleteNightData each TD;

select count i from SimFutures where date=2016.08.02,day_night=0,exch=`shfe
data1:select from SimFutures where date=2016.07.22,day_night=0;
10#data1
data2:select from SimFutures where date=2016.04.29,day_night=0;
-10#data2

kdb+q一个入库和删除的小demo相关推荐

  1. STS安装配置及写的一个springboot整合mybatis的小demo

    新入职的猿,师傅给了一个小任务,用STS写一个springboot整合mybatis的小demo.由于之前没用过STS和eclipse,所以听到这个任务还是比较懵逼的,经过一天的摸索,慢慢的摸出了门道 ...

  2. 接收udp数据_聊聊UDP、TCP和实现一个简单的JAVA UDP小Demo

    最近真的比较忙,很久就想写了,可是一直苦于写点什么,今天脑袋灵光一闪,觉得自己再UDP方面还有些不了解的地方,所以要给自己扫盲. 好了,咱们进入今天的主题,先列一下提纲: 1. UDP是什么,UDP适 ...

  3. MPE环境安装-强化学习的小demo

    这里写自定义目录标题 MPE的前世今生 MPE安装 准备工作 环境配置 开始安装 测试 关于如何将你的虚拟环境和pycharm统一 MPE的前世今生 MPE(Multi-Agent Particle ...

  4. springboot mybatis easyui 整合的一个小demo

    springboot mybatis easyui 整合的一个小demo 这是最终完成界面 话不多说 开整! 这是项目结构 数据库 表结构和数据库 (有点乱 之前本来是个正经图书表的 = =.) /* ...

  5. KDB+q @与. 的使用

    KDB+q @与. 的使用 说起kdb中的符号, @与. 绝对是里面最重要的两个之一.关于这两个符号的使用,在天书里是成批出现,两个的含义基本相似只有小许的区别,可以类比使用. 本文的主要内容来源于官 ...

  6. 我用两天时间搭了一个领外卖红包的小程序

    直接进入主题: 我用两天时间搭了一个领外卖红包的小程序 外卖cps带分销返利源码 怎么推广"外卖CPS项目"赚佣金? 饿了么美团外卖红包小程序搭建教程 源代码地址 http://w ...

  7. 写一个函数DeleteRange删除单链表中结点的值在low 和high之间的结点

    /*实验2 1. 写一个函数DeleteRange删除单链表中结点的值在low 和high之间的结点 (low和high的值是多少可自由设计).并且要在程序中验证其功能实现. (可在实验1的第3题的基 ...

  8. Linux快速复制T级数据或删除大量小文件

    1:快速大量小文件复制 a. 本机不同磁盘之间复制: 复制目录 $ tar cvf – /home/src_dir | tar xvf – -C /opt 复制文件 $ tar cf – access ...

  9. 【✅windows奇怪的知识增加了✅】windows系统下快速删除海量小文件方法

    背景 测试收图demo等,会在本地保存大量图片文件,时间一长,会有多哒几十个GB的数据,占用大量磁盘空间.使用windows的右键删除耗时完全不靠谱,需要十几个小时.尝试了shift+del还是很慢. ...

最新文章

  1. java解析kafkaavro_如何使用Spring Kafka读取合并模式注册的AVRO消息?
  2. Dubbo搭建HelloWorld-搭建服务提供者与服务消费者并完成远程调用(附代码下载)
  3. 通过测试想到的一些问题
  4. bzoj2132: 圈地计划
  5. 【链接保存】十分钟上手sklearn:特征提取,常用模型,交叉验证
  6. XenApp_XenDesktop_7.6实战篇之十二:组策略配置
  7. android获取服务器时间格式,Android 获取服务器与客户端时差的实例代码
  8. Android之AbsoluteLayout(绝对布局)
  9. scratch课程案例——猜拳游戏
  10. MacBook鼠标指针乱窜/不受控制问题的解决方法
  11. java 代码块 构造函数_Java学习笔记之------构造函数,静态关键字,静态代码块,构造代...
  12. windows服务器安全管理工具——IISCrypto
  13. ProcessingJoy —— 扭来扭去【JAVA】【GLSL】
  14. 国家为什么会失败-读书笔记
  15. 博途plc连接电脑_西门子博途怎么上载plc程序
  16. skywalking
  17. 《乔布斯传》圈点(3)
  18. Freemarker生成HTML静态页面
  19. 香港理工大学计算机系李文杰,全额奖学金机会,香港理工计算机系博后/博士/研究助理招收中...
  20. 运营日记:App线下推广

热门文章

  1. 深入浅出零知识证明(二):zkSNARKs基本原理
  2. java笔记之基础-outer标签
  3. 网速慢的几种原因--冤枉的几天呀(网线的问题)
  4. 安装NVIDIA驱动与CUDA教程(+cuDNN)(终极版)
  5. eth0: no IPv6 routers present
  6. conda命令报错Collecting package metadata (repodata.json): failed
  7. php-gtk2怎么用,PHP+GTK2 初体验,简单计算器客户端
  8. 基于DS18B20温度检测
  9. ftp上传工具中文版,有好用的中文版ftp上传工具吗?ftp上传工具中文版
  10. 通过身份证号码得到性别和出生日期