Android 连接两个表并替换值

Android 连接两个表并替换值,android,sql,sqlite,Android,Sql,Sqlite,我有一个名为EnglishText的表,其中包含本地化字符串,还有许多其他表(一个示例是Buildings表),它们的属性(例如名称、描述等)是映射到本地化表中英语字符串的键 英语课文表 标记列是键,文本列具有我想要的英文字符串 建筑物表 Name、PrereqTech和PrereqCivic等列映射到EnglishText表中的标记列 我希望能够运行查询,例如 SELECT * FROM Buildings; 它返回名称、PrereqTech和其他字段中的英文文本,而不是EnglishT

我有一个名为EnglishText的表,其中包含本地化字符串,还有许多其他表(一个示例是Buildings表),它们的属性(例如名称、描述等)是映射到本地化表中英语字符串的键

英语课文表

标记列是键,文本列具有我想要的英文字符串

建筑物表

Name、PrereqTech和PrereqCivic等列映射到EnglishText表中的标记列

我希望能够运行查询,例如

SELECT * FROM Buildings;
它返回名称、PrereqTech和其他字段中的英文文本,而不是EnglishText表的键。这可能吗?

是,假设/使用:-

以及:-

然后

选择名称,来自建筑物的文本在名称=\u标签上加入英文文本

结果:-

SELECT*FROM Buildings JOIN english\u text ON name=\u tag或PreReqtech=\u tag

结果:-


但是,我怀疑您可能希望每个建筑有一行所有映射(我怀疑这可能是可能的,但可能很复杂,因为映射到英文文本表中的一列)

鉴于结构,您可能希望创建一个用户定义的函数查找,以将标记转换为英文文本。然后将该功能应用于select中的每一列。

您是说EnglishText表将包含LOC_BUILDING_Memority_NAME(第一行的映射,从Buildings表到EnglishText表的列名)和TECH_BRONZE_WORKING等行吗(建筑物表第3行PreReqTech列到英文文本的映射)等等?是的,没错!Buildings表中的每一行都有多个键映射到EnglishText表中的字符串。感谢您的帮助!对我来说,用英语字符串替换键可能更容易。我只是希望有一种简单的方法可以做到这一点,而不必编辑它们。如果文本是我们的话,映射将是有益的ed多次,例如PreReqTech和Civic可能会受益。但是,可能在单独的表格中。这也会起作用,也不会太难。我可能会走这条路线。谢谢!