0

获取 id 标签的最佳方法是什么。

这是我面临的问题。

我有很多只包含 id 的表(subject_id、level_id、place_id 等)

显示这些 id 的标签而不进行复杂的 sql 查询的最佳方法是什么(至少有 6 个 id)?

其他不太好的选项是调用 get_label(id,table,lang)

但当然你可以看到每一列的问题(总查询数 = 列 * 行)

有没有更好的解决方案,或者我没有在 6 个表上进行连接就被困住了?

如果有帮助,我正在使用 kohana

这就是我所拥有的...

在此处输入图像描述

和 subject_id 的主题表:

在此处输入图像描述

我对每个 field_id 都有一个对应的表。

就性能而言,最好在需要时进行连接或仅调用查询以获取特定标签。?

4

1 回答 1

1

您想为此使用 SQL JOIN

SELECT t1.*, t2.subject_en, ...
FROM table1 t1
JOIN table2 t2 ON (t2.id = t1.subject_id)

JOIN 具有更好的性能 - 您只有一个查询,可以由数据库引擎正确优化,同时执行 SELECT 同时迭代初始查询中的行将为您提供 n+1 个单独的查询。

于 2012-06-04T20:29:53.283 回答