我有一个表,其中包含一个充当“标志”的列,用于决定从哪个表中提取附加信息(即值 1 从 table1 中提取,2 从 table2 中提取,等等)。通常我会使用索引/键加入表。但是,我可以加入的表包含的信息可以规范化为单独的表,这让我不得不使用列来决定要加入哪个表。
所以这是我的问题,根据此列中产生的值连接不同表的最有效方法是什么?
以下是我目前知道如何完成此任务的两种方法。我很确定它们都不是最佳解决方案:
从我的主表中提取信息(包含决定加入哪个表的列值),然后通过我的应用程序中的代码发送额外的查询以获取其余信息。
疯狂加入,返回每个表的列(即使未使用)。然后,通过我的代码,忽略不需要的表的空值。