获取ID标签的最佳方式是什么。
这是我面临的问题。
我有很多只包含id的表(subject_id,level_id,place_id等等。)
显示这些id的标签的最佳方法是什么,而不显示复杂的sql查询(最少6个')?
其他不太好的选项是调用get_label(id,table,lang)
但当然你可以看到每列的问题(Total queries = column * rows)
任何更好的解决方案,或者我没有在6个桌子上进行连接而被卡住了?
如果它有助于我使用kohana
这是我的......
和subject_id的主题表:
我为每个field_id都有一个对应的表。
在性能方面,更好地进行连接或仅在需要时调用查询以获取特定标签。 ?
答案 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个单独的查询。