我正在尝试将一张桌子左连接到另一张桌子。我有一张看起来像这样的桌子:
工作表:
商店 | 身份证 | 成本 | 日期 |
---|---|---|---|
安盛 | 2B | 2.3 | 2023.01.01 |
DEP | 2B | 2.8 | 2023.01.01 |
动物园 | 2B | 5.0 | 2023.01.02 |
代表 | 3C | 8.7 | 2023.04.04 |
另一个名为 INFO_TABLE ,如下所示:
身份证 | 税 | 日期 |
---|---|---|
2B | 0.5 | 2023.01.01 |
2B | 0.9 | 2023.01.02 |
3C | 1.0 | 2023.04.04 |
如您所见,WORKING_TABLE 有更多行,我尝试在两列(ID 和 Date)上使用 kdb 进行左连接,以便我可以将 Tax 列添加到 WORKING_TABLE 的末尾,如下所示:
商店 | 身份证 | 成本 | 日期 | 税 |
---|---|---|---|---|
安盛 | 2B | 2.3 | 2023.01.01 | 0.5 |
DEP | 2B | 2.8 | 2023.01.01 | 0.5 |
动物园 | 2B | 5.0 | 2023.01.02 | 0.9 |
代表 | 3C | 8.7 | 2023.04.04 | 1.0 |
提前致谢。
如果您在要加入的列上键入正确的表格,它应该可以工作,就像这样
working_table lj `id`date xkey info_table
您可以通过将日期和 ID 作为 INFO_TABLE 的键列来使用“lj”左连接。
q) WORKING_TABLE lj `Date`ID xkey select Date,ID,Tax from INFO_TABLE
Read about lj here - https://code.kx.com/q/ref/lj/