显示同一 mysql 列中的两个单独值时出现问题


Problems displaying two seperate values from the same mysql column

我有一个名为 custom_values 的 mysql 表,其中表中存在两列,一列称为"custome_field_id",另一列称为"值"。

"值"列包含两个不同的值,我需要拉取并显示在我的页面上。一个值是"订单号"值,另一个是"日期"值。"custom_field_id"列显示"日期"值的custom_field_id 33,"订单"值的 237

我想做的是构建我的 php 查询,以便在一个选择语句中,我可以显示这两个值。

例如,最终得到一个 $actual_date 和我可以使用的$Order变量。

这是我当前的选择语句,此时检索"订单"值。但我需要同时展示两者...我尝试在我的选择语句中使用别名,但它对我不起作用......

$stmt = $con->prepare("SELECT custom_values.value, issues.subject, issue_statuses.name, 
                issues.due_date, issues.id as issuesid, 
                users.firstname, users.lastname 
                FROM redmine.issues join redmine.projects on issues.project_id=projects.id 
                left join redmine.users on issues.assigned_to_id=users.id 
                left join redmine.custom_values ON issues.id=custom_values.customized_id 
                left join issue_statuses on issues.status_id=issue_statuses.id 
                where projects.id='".$_SESSION['id']."' 
                and custom_values.custom_field_id=237 ORDER BY $order ASC");
$stmt->execute();

任何帮助不胜感激!

SELECT v_order.value my_order
     , v_date.value date
     , i.subject
     , s.name
     , i.due_date
     , i.id issuesid
     , u.firstname
     , u.lastname 
  FROM issues i
  JOIN projects p
    ON p.id = i.project_id
  LEFT 
  JOIN users u
    ON u.id = i.assigned_to_id
  LEFT
  JOIN custom_values v_order 
    ON v_order.customized_id = i.id
   AND v_order.custom_field_id = 237 
  LEFT
  JOIN custom_values v_date 
    ON v_date.customized_id = i.id
   AND v_date.custom_field_id = 33
  LEFT 
  JOIN issue_statuses s
    ON s.id = i.status_id
 WHERE p.id = "_SESSION['id']" 
 ORDER 
    BY $order ASC

我强烈建议在Ruby中将其构建为Redmine插件。在此级别处理数据库容易出错;但是,在Redmine中使用CustomField和CustomValue类将为您完成所有抽象。

您甚至可以使用 Redmine API [1] 通过 HTTP 访问数据。

[1] http://www.redmine.org/projects/redmine/wiki/Rest_api

如果以下情况正确:在同一个数据库中,您有 2 列,首先包含 2 个不同的数字,如果第二列中有两个不同的值;因此每个项目有 2 行要拉出

如果我误会了,请纠正我。

请尝试以下操作:

... AND ( custom_values.custom_field_id=value_1 OR custom_values.custom_field_id=value_2 ) ORDER ...