- KDB+ - 教程
- KDB+ - 概述
- KDB + - 架构( Architecture)
- Q编程语言(Q Programming Language)
- Q语言 - 类型转换(Type Casting)
- Q语言 - 时间数据(Temporal Data)
- Q Language - Lists
- Q语言 - 索引(Indexing)
- Q语言 - 词典(Dictionaries)
- Q Language - Table
- Q语言 - 动词和副词(Verb & Adverbs)
- Q Language - Joins
- Q语言 - 功能(Functions)
- Q语言 - 内置函数(Built-in Functions)
- Q语言 - 查询(Queries)
- Q - 进程间通信(Q - Inter-Process Communication)
- Q - Message Handler (.Z Library)
- Q语言 - 属性(Attributes)
- Q语言 - 功能查询(Functional Queries)
- Q语言 - 表算法(Table Arithmetic)
- Q语言 - 磁盘上的表(Tables on Disk)
- Q语言 - 维护功能(Maintenance Functions)
- KDB+ - 有用的资源
- KDB+ - 讨论
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
Q语言 - 动词和副词(Verb & Adverbs)
Kdb +有名词,动词和副词。 所有数据对象和函数都是nouns 。 Verbs通过减少表达式中的方括号和括号的数量来增强可读性。 Adverbs修改二元(2个参数)函数和动词以产生新的相关动词。 副词derived functions称为derived functions或derived verbs 。
Each
each副词用(`)表示,修改二元函数和动词以应用于列表项而不是列表本身。 看看下面的例子 -
q)1, (2 3 5) /Join
1 2 3 5
q)1, '( 2 3 4) /Join each
1 2
1 3
1 4
对于使用关键字“each”的monadic函数,有一种形式。 例如,
q)reverse ( 1 2 3; "abc") /Reverse
a b c
1 2 3
q)each [reverse] (1 2 3; "abc") /Reverse-Each
3 2 1
c b a
q)'[reverse] ( 1 2 3; "abc")
3 2 1
c b a
每个左,右 - 右
每个二元函数有两种变体,分别叫做Each-Left (\ :)和Each-Right (/ :)。 以下示例说明了如何使用它们。
q)x: 9 18 27 36
q)y:10 20 30 40
q)x,y /join
9 18 27 36 10 20 30 40
q)x,'y /each
9 10
18 20
27 30
36 40
q)x: 9 18 27 36
q)y:10 20 30 40
q)x,y /join
9 18 27 36 10 20 30 40
q)x,'y /each, will return a list of pairs
9 10
18 20
27 30
36 40
q)x, \:y /each left, returns a list of each element
/from x with all of y
9 10 20 30 40
18 10 20 30 40
27 10 20 30 40
36 10 20 30 40
q)x,/:y /each right, returns a list of all the x with
/each element of y
9 18 27 36 10
9 18 27 36 20
9 18 27 36 30
9 18 27 36 40
q)1 _x /drop the first element
18 27 36
q)-2_y /drop the last two element
10 20
q) /Combine each left and each right to be a
/cross-product (cartesian product)
q)x,/:\:y
9 10 9 20 9 30 9 40
18 10 18 20 18 30 18 40
27 10 27 20 27 30 27 40
36 10 36 20 36 30 36 40
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论