Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否基于现有列将列添加到kdb中的表中?

是否基于现有列将列添加到kdb中的表中?
EN

Stack Overflow用户
提问于 2019-01-23 21:21:44
回答 4查看 2.5K关注 0票数 2

我想向kdb表中添加一个新列,它应该通过填充非空值在现有列的基础上添加,如下所示

代码语言:javascript
运行
AI代码解释
复制
q)t:([]a:`a`b`c`d`e`f`g`h;b:1 0n 3 4 0n 6 0n 8;c:0n 2 0n 0n 5 0n 7 0n)
q)t
a b c
-----
a 1  
b   2
c 3  
d 4  
e   5
f 6  
g   7
h 8  

我想添加一个列d,它将从c或d中获取非null的值,以生成如下所示的表

代码语言:javascript
运行
AI代码解释
复制
a b c d
-------
a 1   1
b   2 2
c 3   3
d 4   4
e   5 5
f 6   6
g   7 7
h 8   8

我试着拼接,但结果里面有null:

代码语言:javascript
运行
AI代码解释
复制
q)update d:(b,'c)from t
a b c  d  
----------
a 1    1  
b   2    2
c 3    3  
d 4    4  
e   5    5
f 6    6  
g   7    7
h 8    8  
EN

回答 4

Stack Overflow用户

发布于 2019-01-23 21:25:55

向量条件可能是您想要的,类似于以下内容:

代码语言:javascript
运行
AI代码解释
复制
update d:?[null b;c;b] from t

您可以阅读有关向量条件here的更多信息。这需要一个布尔列表作为第一个参数,并在第二个参数where True中返回列表中的值,或者在第三个参数where False中返回列表中的值。例如:

代码语言:javascript
运行
AI代码解释
复制
q)?[10101b;”abcde”;ABCDE]
“aBcDe”

当与select/update语句一起使用时,可以将表的列指定为向量条件的参数,因为这些列只是列表。

顺便说一句,null keyword返回一个布尔值true,其中的值为空,这对解决方案很有用。

票数 4
EN

Stack Overflow用户

发布于 2019-01-23 21:45:59

您可以使用^(fill)运算符。

代码语言:javascript
运行
AI代码解释
复制
t:([]a:`a`b`c`d`e`f`g`h;b:1 0n 3 4 0n 6 0n 8;c:0n 2 0n 0n 5 0n 7 0n)
q)update d:b^c from t
a b c d
-------
a 1   1
b   2 2
c 3   3
d 4   4
e   5 5
f 6   6
g   7 7
h 8   8

值得注意的是,如果有一行bc的值不为null值,那么上面的查询将缺省为c中的值。如果您希望b中的值为默认值,则切换输入:

代码语言:javascript
运行
AI代码解释
复制
q)t:([]a:`a`b`c`d`e`f`g`h;b:1 0n 3 4 0n 6 0n 8;c:0n 2 0n 0n 5 100 7 0n)
q)update d:b^c from t
a b c   d
-----------
a 1     1
b   2   2
c 3     3
d 4     4
e   5   5
f 6 100 100
g   7   7
h 8     8
q)update d:c^b from t
a b c   d
---------
a 1     1
b   2   2
c 3     3
d 4     4
e   5   5
f 6 100 6
g   7   7
h 8     8
票数 3
EN

Stack Overflow用户

发布于 2019-01-23 21:27:46

您可以使用'or(|)‘运算符。

代码语言:javascript
运行
AI代码解释
复制
  q)update d:b|c from t

Concat将给出一个列表,其中包含'b‘和'c’列中的项。它不会删除null。“‘or”将比较“b”和“c”的每一对,并返回该对的最大值。由于null小于整数,因此它将为您提供'b‘或'c’列的整数值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54335838

复制
相关文章
运维所需技能体系
产品研发有自己的生命周期: 设计阶段---开发阶段---测试阶段---部署阶段---线上运行阶段---下线或者回滚阶段。
互联网老辛
2018/12/06
9220
python生成项目所需依赖文件
在开发或者在github上clone python项目时,我们经常能看到他们工程的根目录下有一个requirements.txt文件,并且在Readme中介绍使用前需要运行一些命令 这个时什么意思呢? 开发者希望我们能快速配置项目所需要的环境,所以我们需要这个很重要的文件
earthchen
2020/09/24
8140
软件工程 – 专业所需工具
非常好用的开源C/C++ IDE,与mingw搭配使用。替代vc6.0的免费解决方案。
ApacheCN_飞龙
2019/02/15
1.6K0
IOS应用提交所需的ICON
如果提交的ipa包中,未包含必要的Icon就会收到类似的通知,为什么偏偏是Icon-76呢?
meteoric
2018/11/19
8690
mall学习所需知识点
《IntelliJ-IDEA-Tutorial》:https://github.com/judasn/IntelliJ-IDEA-Tutorial
macrozheng
2019/07/22
4990
怎样快速搜索自己所需的资料?
摘要:我不敢保证现在100%的大学生不会使用互联网快速搜索自己所需的资料,但我绝对敢保证有70%~90%大学生不会使用此方法进行快速搜索自己所需的资料。本文以百度为例,分享三个重要技巧。 一、关键词:
用户1756920
2018/06/20
1.6K0
Eclipse中执行Hbase所需jar包
Eclipse中执行Hbase程序需要导入的jar包如下: 1 Hadoop全部jar包 2 Hbase部分jar包     Hbasejar包不能多也不能少,多了会冲突,少了会提醒找不到相应类,Hb
闵开慧
2018/03/30
1.5K0
Eclipse中执行Hbase所需jar包
ios上传appStore所需图片各种尺寸
主要尺寸为(以像素为单位):40 , 60 ,58,87,80,120,180,app store上显示的icon图标尺寸:1024
honey缘木鱼
2018/08/10
5.1K0
ios上传appStore所需图片各种尺寸
JNI所需的C语言知识小结
介绍 作为Android开发人员,会java是必须的,但是一般从事android业务逻辑开发的对C/C++的了解估计仅限于大学里不走心的课程。。。所以参考视频和资料小结一下JNI所需的c语言知识~ 基本数据类型 数据类型 boolean byte char short int long double float void signed unsigned java 1 1 2 2 4 8 8 4 无 无 C 无 无 1 2 4 4 8 4 有符号 无符号 sizeof()函数是用来测量某个类型所占的字节
用户1665735
2018/06/20
1.2K0
软件测试所需要掌握的技能
1.在测试中最重要的文档,他是测试工作的核心,是一组在测试时输入输出的标准,是软件需求的具体对照。编写测试用例,是测试人员的基本功,真正能写好的人并不多。
用户7880705
2020/12/28
1K0
【技能】数据科学家所需技能
小编邀请您,先思考: 1 您认为数据科学家需要具备哪些技能? 2 您擅长那些技能? 数据科学家所需具体技能,罗列如下: 1 数据分析技能 数据清洗 运用合适的统计知识和方法来分析数据 运用机器学习算
陆勤_数据人网
2018/02/28
7250
【技能】数据科学家所需技能
gsea或者gsva所需要的gmt文件
不得不说,数据资源真心丰富啊:The 32880 gene sets in the Molecular Signatures Database (MSigDB) are divided into 9 major collections, and several sub-collections.
生信技能树
2022/04/15
3.2K0
gsea或者gsva所需要的gmt文件
ChatGPT 的 AskYourPDF 插件所需链接如何获取?
目前 ChatGPT 主要有两款 PDF 对话插件,一个是 AskYourPDF 一个是 ChatWithPDF(需 ChatGPT Plus),他们都可以实现给一个公共的PDF 链接,然后进行持续对话,对读论文,阅读 PDF 格式的文档非常有用。
明明如月学长
2023/05/22
3.6K0
ChatGPT 的 AskYourPDF 插件所需链接如何获取?
高效编程所需要做的那点事
聊聊如果才能高效编程 计划(Plan) 所谓Plan,其实就是对应于编程中的设计阶段,当然,这里的Plan并不像设计那样重量级。它要求我们程序员在正式编程前至少要考虑一下下面的问题: 你这个程序,工具或是项目的目的,究竟是用来干什么的。你只有知道做什么,要达到什么样的目的 你这个程序,工具或是项目的目的,究竟是用来干什么的。你只有知道做什么,要达到什么样的目的,你才能做得对,做得好。 需要有什么样的功能。需要你给出来个功能列表。这样可以保证我们不会遗露了什么。准备好一些技术难题的前期调查
码神联盟
2018/04/02
5100
车载网络: OMNet++所需的组件支持
安装过程详见我的另两篇博客:Ubuntu: 安装 OMNeT++ 仿真工具、车载网络: OMNeT++安装CAN协议 。
JNingWei
2018/09/27
1.1K0
【Struts】配置Struts所需类库详细解析
在 Struts框架配置详情 中,谈到了使用Struts所必须的Jar文件。这里对使用到的Jar文件进行详细解析。
陈树义
2022/04/29
2910
【Struts】配置Struts所需类库详细解析
你所需要掌握的问题排查知识
由于业务应用 bug(本身或引入第三方库)、环境原因、硬件问题等原因,线上服务出现故障 / 问题几乎不可避免。例如,常见的现象包括请求超时、用户明显感受到系统发生卡顿等等。
测试开发技术
2020/01/17
1.4K0
你所需要掌握的问题排查知识
SSM整合所需的maven配置文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" x
说故事的五公子
2019/10/24
6750
点击加载更多

相似问题

缺少所需参数

14

Web所需参数

53

缺少所需参数

22

缺少所需参数

11

所需隐含参数

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档