在 KDB Q 中,如何 select 符号的最后一个字母?
In KDB Q, how can I select the last letter of a symbol?
假设我有一个 table,其中的枚举符号列的值为:
sym
_ _ _ _
AAPL
MSFT
INTC
我正在尝试 select 仅符号最后一个字母为 C
的行。
我已经 select反对 last string sym
和 -1#string sym
,但我每次都收到不兼容的列表长度错误。
我做错了什么?
这个有用吗?
q)t: ([] sym: `AAPL`MSFT`INTC)
q)t
sym
----
AAPL
MSFT
INTC
q)select last each string sym from t
sym
---
L
T
C
关键字 like
适用于符号和字符串,因此如果您尝试进行模式匹配,则无需强制转换为字符串
q)select from ([]sym:`AAPL`MSFT`INTC`ABC) where sym like"*C"
sym
----
INTC
ABC
假设我有一个 table,其中的枚举符号列的值为:
sym
_ _ _ _
AAPL
MSFT
INTC
我正在尝试 select 仅符号最后一个字母为 C
的行。
我已经 select反对 last string sym
和 -1#string sym
,但我每次都收到不兼容的列表长度错误。
我做错了什么?
这个有用吗?
q)t: ([] sym: `AAPL`MSFT`INTC)
q)t
sym
----
AAPL
MSFT
INTC
q)select last each string sym from t
sym
---
L
T
C
关键字 like
适用于符号和字符串,因此如果您尝试进行模式匹配,则无需强制转换为字符串
q)select from ([]sym:`AAPL`MSFT`INTC`ABC) where sym like"*C"
sym
----
INTC
ABC