kdb - 使用 kdb 中的 where 子句将表作为条件传递
问题描述
我有一张桌子:
t:([] sym:`GOOG`AMZN; px:10 20; vol:100 200);
是否可以将子表作为 where 子句条件传递给表?
下面的查询抛出类型错误:
select from t where ([] sym:enlist `GOOG; px:enlist 10)
解决方案
对的,这是可能的:
q)select from t where([]sym;px) in ([] sym:enlist `GOOG; px:enlist 10)
sym px vol
-----------
GOOG 10 100
更新:但是,如果t
很大,这应该更快:
q)([] sym:enlist `GOOG; px:enlist 10)#2!t
sym px| vol
-------| ---
GOOG 10| 100
推荐阅读
- reactjs - 在 React 中将异步函数放入 useEffect() 钩子中
- ios - 如何从 SwiftUI 视图中呈现 UIDocumentInteractionController
- javascript - 将负数转换为正数而不影响js中的小数点
- c# - SixLabors ImageSharp 生成巨大的图像文件
- c# - 在 Xunit 中测试 id 是否大于 0
- css - 保存scss文件时css文件未更新
- python - 如何强制 Plotly 动画从最后一帧开始?
- arrays - ajax中的循环数组
- c - 为什么我在这里遇到内存泄漏?BFS 在 C 中的字符串图上
- ios - 如何在 Xcode 12 中添加来自插座检查器的连接