Я предполагаю, что единственная логика заключается в том, что Table2.Ticker
можно разделить на .
, и это можно сопоставить с Table1.symbol
.
Во-первых, вы можете разделить тикер:
q)update fragment:`$("." vs' string Ticker)[;0] from `Table2
`Table2
q)Table2
Title Ticker fragment
----------------------------------
ARCELORMITTAL REG AAA.AS AAA
TC EURO EQ TEET.AS TEET
Хотя я мог бы назвать fragment
symbol
вместо меня это как отдельный столбец для иллюстрации. Кроме того, необходимо столбец fragment
присоединиться на на Table1
:
q)update fragment:symbol from `Table1
`Table1
q)Table1
symbol ric fragment
------------------------
AAA AATSA.AS AAA
AALB AALB.AS AALB
Так что теперь мы можем либо сделать uj
или lj
- вы должны смотреть это на справочных страницах. Просто использовать uj
в этом случае, чтобы увидеть весь притон:
q)(`fragment xkey Table1) uj (`fragment xkey Table2)
fragment| symbol ric Title Ticker
--------| -----------------------------------------
AAA | AAA AATSA.AS ARCELORMITTAL REG AAA.AS
AALB | AALB AALB.AS
TEET | TC EURO EQ TEET.AS
На ... заметка на полях Присоединение Bloomberg и РЦП символов кошмар :-) В конце концов вы будете иметь, чтобы есть таблицы, которые объединяются с ISINS, RIC и Bloomberg, имея в виду, что RIC и тикеры меняются со временем.
Спасибо за ответ, я потратил столько времени на то, чтобы найти ответ. Также небольшая коррекция, которую я думаю, должна быть без символа '' перед именами таблиц. Последнее, что я собираюсь по кругу, чтобы получить что-то простое, чтобы это работало, знаете ли вы хорошие ресурсы, которые могут помочь мне лучше понять kdb? – Kareem
@ Запишите имя таблицы, в которой '\' 'обновляет таблицу на месте. В противном случае вы получите копию возвращенной таблицы, а исходная таблица - нетронутой. Что касается ресурсов, я бы настоятельно рекомендовал Q для Mortals в первую очередь. Также есть куча других учебных пособий, см. Этот сайт: http://code.kx.com/wiki/Tutorials –
Спасибо, обязательно посмотрите на это. – Kareem