我一直在使用Drupal 7 Web应用程序。
今天我尝试使用db_query_temporary函数在我的自定义模块中创建一个临时表,如下所示:
$result = db_query_temporary("select * from {node}");
但$ result给出" db_temporary_0"。 我需要使用{node}表来加入从复杂查询创建的临时表。
提前致谢。
答案 0 :(得分:3)
db_query_temporary()
创建一个临时表并返回表的名称,因此db_temporary_0
似乎非常合理。您将在db_select()
中使用该结果加入您需要的任何其他内容:
// obviously you wouldn't want something this simple....
$tmp_tbl = db_query_temporary("SELECT * FROM {node}");
$query = db_select('node', 'n');
$query->join($tmp_tbl, 't', n.nid = t.nid'); //JOIN with node