-2
我有两个表。一个具有订单ID的订单信息,另一个具有订单详细信息。 order_details对每个order_id都有多行。我想要一个查询来提取订单信息,然后为order_details表上的每个条目添加一个“列”。MySQL两列成列
这可能吗?如果是这样,怎么样?
我有两个表。一个具有订单ID的订单信息,另一个具有订单详细信息。 order_details对每个order_id都有多行。我想要一个查询来提取订单信息,然后为order_details表上的每个条目添加一个“列”。MySQL两列成列
这可能吗?如果是这样,怎么样?
这是不可能在MySQL中,或我知道的任何SQL,异常高度硬编码查询与过多的连接或子查询。
这种类型的问题通常被归入编程语言领域。如果你有一个临时需要查询要做到这一点,那么这样的事情会做(你将不得不引用关键字order
)
SQL例如:
SELECT
order_id,
date,
(select amt from order_detail where order_id=order.order_id and detail_line=1),
(select amt from order_detail where order_id=order.order_id and detail_line=2),
(select amt from order_detail where order_id=order.order_id and detail_line=3),
(select amt from order_detail where order_id=order.order_id and detail_line=4),
FROM
order
WHERE
order_id = 1234
这就是我正在做的,但我希望有一些“更漂亮”。但如果这是不可能的,我想这是不可能的。谢谢! – nathangiesbrecht
困惑,这是为什么全部在两张桌子里。是不是“信息”和“细节”同义词?你可以将它们组合起来吗?还要为每个条目添加一列来混淆你的意思?在HTML中?细节表的设置是什么? – bowlerae
这可能吗?几乎肯定,是的。怎么样?你告诉我们 - 如果不知道数据库中的列和你想要返回的内容,我们就无法给你一个查询。问一个更精确的问题,我相信人们会很乐意帮助你。 – Hecksa
我正在做什么@gahooa建议如下。如果有人知道更好的方法,我会非常感激。 – nathangiesbrecht