离乡不肖生 2015-10-15 04:03 采纳率: 0%
浏览 1537
已采纳

mysql数据库查询的格式化

本人按一个日期段查询表的记录,为保证统一的处理方式,想让查询结果自动补全,如下所示:
billRec
100元,5人,2015-09-15
200元,6人,2015-09-21

而我想在查询日期为2015-09-15至2015-09-30这个日期区间时显示如下结果:
100元,5人,2015-09-15
0,0,2015-09-16
0,0,2015-09-17
……
200元,6人,2015-09-21
0,0,2015-09-22
0,0,2015-09-23
……
0,0,2015-09-30

也就是不存在的日期自动补为0,日期字段要显示全部。

请高手给个方法,最好是sql实现,如果根本就不应该这么处理,那如何对返回的记录集DataTable上作处理,顿首百拜啊

  • 写回答

2条回答 默认 最新

  • 好运常伴身旁 2015-10-16 07:51
    关注

    DROP TEMPORARY TABLE IF EXISTS TABLE_1;
    CREATE TEMPORARY TABLE TABLE_1
    (
    SELECT *
    FROM
    (
    SELECT '100YUAN' vMoney,'5REN' vNum,'2015-09-15' vDate
    UNION ALL
    SELECT '200YUAN','6REN','2015-09-21'
    )a
    );

    DROP TEMPORARY TABLE IF EXISTS TABLE_2;
    CREATE TEMPORARY TABLE TABLE_2
    (
    SELECT *
    FROM
    (
    SELECT '2015-09-15' vDate
    UNION ALL
    SELECT '2015-09-16'
    UNION ALL
    SELECT '2015-09-17'
    UNION ALL
    SELECT '2015-09-18'
    UNION ALL
    SELECT '2015-09-19'
    UNION ALL
    SELECT '2015-09-20'
    UNION ALL
    SELECT '2015-09-21'
    UNION ALL
    SELECT '2015-09-22'
    UNION ALL
    SELECT '2015-09-23'
    UNION ALL
    SELECT '2015-09-24'
    ) a
    );

    SELECT a.vDate,IFNULL(b.vMoney,0) vMoney,IFNULL(b.vNum,0) vNum
    FROM TABLE_2 a
    LEFT JOIN TABLE_1 b ON a.vDate = b.vDate
    ORDER BY a.vDate

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥30 用arduino开发esp32控制ps2手柄一直报错
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题