jquery - 如何编写这个查询以获得正确的结果?

标签 jquery mysql sql oracle

我有下表

+----+----------+------+
|D_ID|date      |value |
+----+----------+------+
|0   |1992-02-01|119940|
+----+----------+------+
|1   |1992-02-01|119941|
+----+----------+------+
|1   |1992-02-02|119942|
+----+----------+------+
|2   |1992-02-01|119943|
+----+----------+------+
|0   |1992-02-02|119944|
+----+----------+------+
|0   |1992-02-03|119945|
+----+----------+------+
|2   |1992-02-02|119946|
+----+----------+------+
|1   |1992-02-04|119947|
+----+----------+------+
|1   |1992-02-05|119948|
+----+----------+------+
|2   |1992-02-02|119949|
+----+----------+------+
|2   |1992-02-03|119940|
+----+----------+------+
|0   |1992-02-04|119940|
+----+----------+------+

有什么办法可以得到下面的结果吗?我想获取每天的D_ID值。

+----------+------+------+------+
|date      |D_ID_0|D_ID_1|D_ID_2|
+----------+------+------+------+
|1992-02-01|119940|119941|119943|
+----------+------+------+------+
|1992-02-02|119944|119942|119949|
+----------+------+------+------+
|1992-02-03|119945|      |119940|
+----------+------+------+------+
|1992-02-04|119940|119947|      |
+----------+------+------+------+
|1992-02-05|      |119948|      |
+----------+------+------+------+

最佳答案

希望这有帮助!

甲骨文:

SELECT date ,
       MAX(DECODE(D_ID,0,value,NULL)) as D_ID_0,
       MAX(DECODE(D_ID,1,value,NULL)) as D_ID_1,
       MAX(DECODE(D_ID,2,value,NULL)) as D_ID_2
FROM 
     your_table
GROUP BY date ;

MySQL:

SELECT date ,
       MAX(IF(D_ID=0,value,NULL)) as `D_ID_0`,
       MAX(IF(D_ID=1,value,NULL)) as `D_ID_1`,
       MAX(IF(D_ID=2,value,NULL)) as `D_ID_2`
FROM 
     your_table
GROUP BY date ;

或者

SELECT date ,
       MAX((CASE WHEN (d_id = 0) THEN value ELSE NULL end)) AS `D_ID_0`,
       MAX((CASE WHEN (d_id = 1) THEN value ELSE NULL end)) AS `D_ID_1`,
       MAX((CASE WHEN (d_id = 2) THEN value ELSE NULL end)) AS `D_ID_2`
FROM 
     your_table
GROUP BY date ;

关于jquery - 如何编写这个查询以获得正确的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21144286/

相关文章:

javascript - 如何让 JQuery 与 iCheck 插件一起工作

javascript - 使用 JQuery 根据行 ID 修改列

mysql - SQL 仅选择列上具有最大值的行

mysql - Drupal 6 我可以截断数据库中的批处理表吗

sql - 获取具有最大计数的行

javascript - JavaScript 中按钮的不同操作

javascript - 如何将对象加载到 jQuery 对象

MySQL 高级排名查询

mysql - 哪个数据库最适合 Magento

mysql - MySQL 中的 ROW_NUMBER()