获取id的标签

时间:2012-06-04 20:22:57

标签: php mysql database kohana database-performance

获取ID标签的最佳方式是什么。

这是我面临的问题。

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

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

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

但当然你可以看到每列的问题(Total queries = column * rows)

任何更好的解决方案,或者我没有在6个桌子上进行连接而被卡住了?

如果它有助于我使用kohana

这是我的......

enter image description here

和subject_id的主题表:

enter image description here

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

在性能方面,更好地进行连接或仅在需要时调用查询以获取特定标签。 ?

1 个答案:

答案 0 :(得分:1)

您希望使用SQL JOIN

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

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