0

好的,首先让我说清楚:我对SQL 和数据库非常薄弱(我的意思是除了几个简单的语句),但事实证明我必须处理一些SQLite DB,所以我想我需要你的帮助在这个查询上(对于比我更熟悉 SQL 的人来说,这应该是非常简单的......):

我有 2 张桌子:

TOKENTYPES

TOKENTYPE_ID  TOKENTYPE_NAME
1             nameA
2             nameB
3             nameC

TOKENS

TOKEN_ID TOKENTYPE_ID TOKEN_NAME
1        2            tokA
2        2            tokB
3        3            tokC

我知道的 :

  • 通过SELECT TOKENTYPE_ID,TOKEN_NAME FROM TOKENS,我可以从 TOKENS 获取所有 (TOKENTYPE_ID,TOKEN_NAME) 对
  • 通过SELECT TOKENTYPE_NAME FROM TOKENTYPES WHERE TOKENTYPE_ID=2,我可以获得Name特定令牌 ID。

现在,这是问题所在:

我怎样才能“组合”这两个查询并获得一个带有TOKENTYPE_NAME,的表TOKEN_NAME


编辑:

期望的结果:

TOKEN_NAME TOKENTYPE_NAME

tokA       nameB
tokB       nameB
tokC       nameC
4

2 回答 2

1
SELECT tt.TOKENTYPE_NAME, t.TOKEN_NAME 
FROM TOKENS AS t
JOIN TOKENTYPES AS tt
    ON tt.TOKENTYPE_ID = t.TOKENTYPE_ID
于 2013-03-09T09:44:36.320 回答
1
SELECT  a.Token_Name,
        b.TokenType_Name
FROM    Tokens  a
        INNER JOIN TokenTypes b
            ON a.TokenType_ID = b.TokenType_ID

要进一步了解有关联接的更多信息,请访问以下链接:

结果

╔════════════╦════════════════╗
║ TOKEN_NAME ║ TOKENTYPE_NAME ║
╠════════════╬════════════════╣
║ tokA       ║ nameB          ║
║ tokB       ║ nameB          ║
║ tokC       ║ nameC          ║
╚════════════╩════════════════╝
于 2013-03-09T09:45:58.297 回答