热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在SQLITE中使用窗口函数

如何解决《在SQLITE中使用窗口函数》经验,为你挑选了1个好方法。

我有这组数据

purchasingid          date   supplierid
1                2014-01-01    12
2                2014-01-01    13
3                2013-12-06    12
4                2013-12-05    11
5                2014-01-01    17
6                2013-12-05    12

我想查看在2014-01-01购买的所有供应商,这是他们之前订单的日期.如果不存在则将其留空.

意思是我想得到:

supplierid   date   last_time_buy_date
12            2014-01-01   2013-12-06
13            2014-01-01  
17            2014-01-01

supplierid 11在2014-01-01没有购买,所以他根本没有出现.

这就是我做的:

select supplierid,date, max(date)
from purchasing 
where supplierid in (select supplierid
                     from purchasing
                     where date='2014-01-01')

这不起作用.我知道我应该以某种方式使用窗口功能,但我不知道如何...任何想法?



1> Gordon Linof..:

SQLite不支持窗口函数.相反,你可以这样做:

select p.*,
       (select max(p2.date)
        from purchasing p2
        where p2.supplierid = p.supplierid and
              p2.date 


推荐阅读
author-avatar
北京圣才
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有