【发布时间】:2010-01-13 05:22:35
【问题描述】:
我正在编写一个 drupal 模块,我需要编写一个查询来返回我的一个 content_type 表的特定行。到目前为止,我的查询是:
SELECT DISTINCT pb.*, f.filepath FROM {content_type_promo_box} pb LEFT JOIN {files} f ON pb.field_promo_image_fid = f.fid
我在工作时意识到该表不仅包含此内容类型的每个 cck 字段,还包含每个字段的多个版本。如何将我的查询限制为仅包含 当前 版本节点的值的行?
更新:我需要澄清一下我的问题。我已经走上了视图路径,并且我确实考虑过使用 node_load (不过,谢谢你的回答,杰里米!)。真的,我的问题更多是关于如何编写适当的 SQL 语句,而不是专门针对 drupal。我只想返回包含任何特定节点(nid)的最新版本(vid 是最好的)的行。所以这里有一个例子:
-------------
| nid | vid |
-------------
| 45 | 3 |
| 23 | 5 |
| 45 | 9 |
| 23 | 12 |
| 45 | 36 |
| 33 | 44 |
| 33 | 78 |
-------------
我的查询应该返回以下内容:
-------------
| nid | vid |
-------------
| 23 | 12 |
| 45 | 36 |
| 33 | 78 |
-------------
有意义吗?谢谢!
【问题讨论】:
-
你是什么意思,修订节点或多值字段?