SQLite:如何将列中的标识符替换为另一个表中的等效字符串



我正在使用口袋妖怪作为我的荣誉论文的实验数据集。使用SQLite,我想从一组卡片中构建套牌。

我现在要做的是两张桌子,一副牌和纸牌。

图1.卡片表

和甲板

图2.甲板桌

我想将牌组中 card_# 列中的整数标识符替换为卡片中卡名列中的字符串。

这样,我会得到

{ a, pickachu, 20, charmander 30, water, 10 }
{ b, ...                                    }
                    .
                    .
                    .
{ j, ...                                    }

到目前为止,我一直在使用无数的连接、联合、子句和运算符来尝试解决这个问题,但我是一个非常初学者,到目前为止我的尝试都没有奏效。

还是我的数据组织有问题?

提前感谢您的任何帮助!

编辑:我意识到我可以更新它,这是合乎逻辑的选择吗?

    --A self join ended up being the solution!
select decks.deckname, a.cardname as card1, decks.wt_1, b.cardname as card2, decks.wt_2, c.cardname as card3, decks.wt_3 
from decks
    join cards a
    on decks.card_1=a.uniquecard
    join cards b
    on decks.card_2=b.uniquecard
    join cards c
    on decks.card_3=c.uniquecard;

完整表

相关内容

最新更新