SQL从列中获取值并拆分为列。此后与另一张桌子结合

时间:2012-06-19 11:12:53

标签: mysql datetime

我有两张桌子。第一个表有一个列有很多不同的值,我想在显示结果时分成几列。然后我想将这些结果与表二结合起来:

请注意,表一具有每小时值,而表二只有时间等于00:00:00的日期。

表1

+---------------------+------+----+
| DateAndTime         | Area | V1 |
+---------------------+------+----+
| 2012-01-01 00:00:00 | A1   | 3  |
| 2012-01-01 00:01:00 | A1   | 4  |
| 2012-01-01 00:00:00 | A2   | 4  |
| 2012-01-01 00:01:00 | A2   | 2  |
+---------------------+------+----+

我想将区域列拆分为多个列,然后根据日期与表2结合使用。

表2

+---------------------+----+
| DateAndTime         | V2 |
+---------------------+----+
| 2012-01-01 00:00:00 | 3  |
| 2012-01-02 00:00:00 | 4  |
+---------------------+----+

我希望将最终结果打印成这样:

+---------------------+----+----+----+
| DateAndTime         | A1 | A2 | V2 |
+---------------------+----+----+----+
| 2012-01-01 00:00:00 | 3  | 4  | 3  |
| 2012-01-01 00:01:00 | 4  | 2  | 4  |
+---------------------+----+----+----+

可以有多个区域值(A1A2A3,...),上面的数据经过简化以表明我的观点:)

我希望我不是双重发帖,而且有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

您在此尝试实现的是区域的不同值的转换。

固定且有限数量的它们是可能的,但是如果这个数字没有限制那么你只需 并且必须依赖它在您的应用程序层上执行此操作:(

如果你不是一个关于如何可能的理论例子,请发表评论:)