【问题标题】:Drupal query builder return all fieldsDrupal 查询生成器返回所有字段
【发布时间】:2013-10-30 13:20:29
【问题描述】:

如何使用 Drupal 7 的查询构建器编写查询以返回所有字段 (SELECT *),而不仅仅是我通过 ->fields 指定的字段。

编辑: 我尝试了类似的东西

$query = db_select('table') ->条件('id', 2);

但是当我回显它时,它是这样的:

SELECT FROM {table} 表 WHERE (id = :db_condition_placeholder_0)

我没有测试查询,但我的想法是它不会工作,因为 SELECT 后没有 *。

【问题讨论】:

  • 我已经搜索过(包括您的链接),但我还没有找到如何完成这样的壮举。
  • 您能发布到目前为止您尝试过的内容吗?
  • 简短回答:$id = 1; $results = db_query('SELECT * FROM table WHERE someId = :myId', array(':myId' => $id));
  • 编辑了我尝试过的内容。我不喜欢你的解决方案,因为我不知道我的 contion 语句(WHERE)中有多少字段,如果我只是将字符串连接在一起,我的代码会看起来很丑陋且难以理解。

标签: php drupal-7 query-builder


【解决方案1】:

这就是你的做法:

<?php

$myId = 5;
$result = db_select('table', 't')
    ->fields('t')
    ->condition('id', $myId, '=')
    ->execute()
    ->fetchAssoc();

?>

以上等价于:

SELECT t.* FROM table as t WHERE t.id = 7

更多信息请参见此处的 API 文档:https://api.drupal.org/api/drupal/includes!database!database.inc/function/db_select/7

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-30
    • 2020-06-24
    • 1970-01-01
    相关资源
    最近更新 更多