一个统计以往数据的SQL。

今天有一位朋友发了这么个场景:一个商店的收入记录表,每天都有记录;

日期 每天收入
07/11 100
07/12 102
07/13 103
07/14 101

现在做一个统计,用户希望看到自已的收入统计

日期 每天收入
07/11 100
07/12 202
07/13 305
07/14 406
CREATE TABLE IF NOT EXISTS `income` (
  `id` int(11) NOT NULL,
  `idate` date DEFAULT NULL,
  `money` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `idate` (`idate`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
select a.idate ,sum(b.money) as num
from income as a left join income as b
on b.idate<=a.idate group by a.idate order by a.idate 
SELECT id, idate, (@rowNum := @rowNum + money) AS total FROM income, (
SELECT (@rowNum := ifnull( (SELECT sum( money ) FROM income WHERE id <=0 ) , 0)))b ORDER BY id limit 0,30

一个统计以往数据的SQL。

时间: 2024-10-13 22:33:07

一个统计以往数据的SQL。的相关文章

分享一个统计股票数据的东东

自己瞎捣鼓了一段时间python,数据来源新浪财经,每天收盘启动爬虫抓取一遍 ,web 端呈现.技术点:scrapy apscheduler sqlalchemy mysql flask nginx 部署在阿里云上:http://139.196.185.215/

统计数据方面SQL与HQL

因为HQL是面向对象的,所以对于统计数据方面使用HQL时不合适的,其实HQL最终还是会转化成SQL语句,项目里使用HQL语句应该是为了标准规范化. 统计的数据:同一个表,同一个字段,不同属性,统计不同属性的记录数: 例如:有一个房间表格,如图所示: 现在我要做的是统计各种房间可用的数量分别是多少. 但是这个对于HQL语句是运行不同的,所以在DaoImp层,使用了查询SQL 另外:说明一下对于List无法直接调用属性的话,例如(#list.name,#list.password) 对于使用iter

一个统计报表sql问题

今天朋友问我了一个统计报表的sql问题.我弄了好久.终于算是写出来了.这里记录下. 问题: id--------------name--------------addtime1                       a                      2014-01-01 02:30:211                       b                      2014-01-03 03:20:021                       c      

Excel导入数据到Sql server 中出错:“文本被截断,或者一个或多个字符在目标代码页中没有匹配项”

从Excel导入数据到Sql server 时,由于表中的数据有的很长,导入时出现如下错误(如果数据不是很长,255内以内,则不会出现错误): 出错原因: SQL Server的导入导出为了确定数据表的每个字段类型,取excel表的每个字段的前几行(3行即可)来判别.如果前3条是少于255的字符串,则设成nvarchar(255)类型,所以,当如果第四条或更后的数据的字符数大于255,则会报错. 解决方法: 在导入数据前,可以手动加几条无关的数据,让字段的字符数大于255,则导入时SQL Ser

CK2255-以慕课网日志分析为例 进入大数据 Spark SQL 的世界

新年伊始,学习要趁早,点滴记录,学习就是进步! 随笔背景:在很多时候,很多入门不久的朋友都会问我:我是从其他语言转到程序开发的,有没有一些基础性的资料给我们学习学习呢,你的框架感觉一下太大了,希望有个循序渐进的教程或者视频来学习就好了.对于学习有困难不知道如何提升自己可以加扣:1225462853  获取资料. 下载地址:https://pan.baidu.com/s/1hsU5EIS 以慕课网日志分析为例 进入大数据 Spark SQL 的世界 本课程以"慕课网日志分析"这一大数据应

数据库1(数据库、表及表数据、SQL语句)

01数据库概念 A: 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来, 用户可以对数据库中的数据进行增加,修改,删除及查询操作. B: 什么是数据库管理系统 数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立.使用和维护数据库, 对数据库进行统一管理和控制,以保证数据库的安全性和完整性.用户通过数据库管理系统访问数据库中表内的数据. 02常见的数据库 * A: 常见的数据库

做图表统计你需要掌握SQL Server 行转列和列转行

说在前面 做一个数据统计和分析的项目,每天面对着各种数据,经过存储过程从源表计算汇总后需要写入中间结果表以提高数据使用效率,那么此时就需要用到行转列和列转行. 1.列转行 数据经过计算加工后会直接生成前端图表需要的数据源,但是程序里又需要把该数据经过列转行写入中间表中,下次再查询该数据时直接从中间表查询数据. 1.1 列换行语法 table_source UNPIVOT( value_column FOR pivot_column IN(<column_list>) ) 1.2  行转列案例

一个高效的数据分页的存储过程 可以轻松应付百万数据

一个高效的数据分页的存储过程 可以轻松应付百万数据 CREATE PROCEDURE pageTest --用于翻页的测试--需要把排序字段放在第一列 (@FirstID nvarchar(20)=null, --当前页面里的第一条记录的排序字段的值@LastID nvarchar(20)=null, --当前页面里的最后一条记录的排序字段的值@isNext bit=null, --true 1 :下一页:false 0:上一页@allCount int output, --返回总记录数@pag

复制一个用户的数据到另外一个用户----IMPDP

如何快速的复制一个用户的数据到另外一个用户(这个用户可能在不同的数据库中)?一般答案:使用EXP(EXPDP)与IMP(IMPDP)相结合完成用户数据的导入和导出 高级方法:IMPDP工具提供的NETWORK_LINK参数可以一步到位的完成此项艰巨的任务.这种方法非常类似于使用CTAS方法在表复制中的应用,只不过这里我们实现的是用户间的数据复制. 使用这种方法的一般步骤如下:a.创建database link:b.使用IMPDP的network_link.schemas和remap_schema