0 0

sql语句难题:排序,统计5

本人想要实现某产品的销量统计,算法如下:

前两天的销量比较:如果前天比昨天高,则标记为正1;低,则标记为负1;

若持平,则标记为0. 并且按销量由高到低排序。

求高手一条sql语句解决(多条也行)。

已知条件:

表名:goods, 商品名:goodsname,交易时间:goodstime,销量:saleamount.

其中,商品有20种,记录估计1000条。

说明:只求sql,不用考虑其他sql语句以外的问题。
2012年12月11日 15:42

1个答案 按时间排序 按投票排序

1 0

采纳的答案

select
  goodsname,
  goodstime,
  saleamount curr_saleamount,
  lag(saleamount, 1) over (order by goodstime) prev_saleamount
 
from goods; 

lag函数可以取到上个月的 saleamount  然后再写个子查询比较即可 第一个月的是null

2012年12月11日 16:12

相关推荐

    SQL语句在病案统计中的应用.pdf

    综上所述,SQL语句在病案统计中的应用不仅可以解决复杂的查询难题,而且可以大大提高医院数据处理的效率和质量,是现代医院信息系统中不可或缺的技术工具。随着医疗信息化建设的深入发展,SQL语句在病案统计乃至整个...

    Oracle database SQL11g.pdf(含实验 手册)

    - **SELECT语句**:学习如何使用SELECT语句从数据库中检索数据,包括选择字段、过滤记录、排序结果和分组数据。 - **JOIN操作**:理解INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN的区别,以及在不同场景下的...

    oracle SQL疑难解析 书中SQL

    10. **存储过程与函数**:存储过程和用户自定义函数是预编译的SQL语句集合,可以封装复杂的业务逻辑,提高代码重用性和安全性。 11. **游标**:游标允许逐行处理查询结果,这对于循环处理数据或执行动态SQL非常有用...

    SQL Cookbook.pdf

    12. 存储过程与函数:存储过程是一组预编译的SQL语句,可封装成一个单元执行。函数是返回值的存储过程,可用于复杂的计算或自定义操作。 13. 触发器:触发器是一种数据库对象,当特定的数据库事件(如INSERT、...

    面试难题Top10:读懂难题背后的真正含义.zip

    5. **数据库设计与优化**:理解SQL语句的执行效率、索引原理、事务处理和数据库设计模式是必不可少的。 6. **网络协议与安全**:面试中可能会涉及TCP/IP协议栈、HTTP协议、SSL/TLS加密机制等,以及网络安全问题的...

    利用SQL SERVER实现拼音简码自动转换汉字.pdf

    通过执行特定的SQL语句,可以获得数据库支持的所有排序规则,这为后续的拼音简码到汉字的转换提供了技术基础。 接着,文章探讨了排序规则的扩展应用,如按拼音和笔划排序汉字等。通过一系列的SQL语句操作,可以实现...

    SQL解惑_pdf_againstccb_

    《SQL解惑(第2版)》是一本深入探讨SQL编程问题的专业书籍,旨在帮助读者解决在实际工作中遇到的各种SQL难题。SQL,全称为Structured Query Language,是用于管理和处理关系数据库的标准语言。这本书以问题为导向,...

    SQL实践源代码用sql语言编写的

    7. **存储过程和函数**:存储过程是预编译的SQL语句集合,可以封装一系列操作,提高执行效率。函数则是返回单一值的预定义过程,可用于计算或处理数据。 8. **事务处理**:SQL支持事务(Transaction),确保数据的...

    牛客SQ练习题及答案(1-61题)

    14. **SQL注入**:了解SQL注入攻击的原理,学习如何编写安全的SQL语句,防止注入风险。 通过牛客网的SQL练习题,学习者不仅能熟悉SQL语法,还能加深对数据库设计和数据处理的理解,为实际工作中的数据查询和分析...

    SQL语言艺术

    动作丰富的SQL语句 充分利用每次数据库访问 接近DBMS核心 只做必须做的 sQL语句反映业务逻辑 把逻辑放到查询中 一次完成多个更新 慎用自定义函数 简洁的SQL SQL的进攻式编程 精明地使用异常(Exceptions) 3 战术部署...

    SQL Server开发人员应聘常被问的问题妙解汇总

    SQL Server 2000有两种触发器:INSTEAD-OF触发器替代DML语句执行,AFTER触发器在DML操作完成后执行,用于监控数据变化。 6. **如何确保TableB的Fld1字段只包含TableA的Fld1字段中的值?** 可以通过外键约束实现,...

    基于Oracle数据库海量数据的查询优化研究.pdf

    在 Oracle 数据库的编写工作中,主要面临的难题是 SQL 语句可执行性问题,虽然有多种编写方式然而很难找到最适合的编写方式。因此,必须对数据查询优化做好 SQL 语句优化工作,保证能够实现高效率的 SQL 语句执行。 ...

    面试资料集合

    16. 查询并排序:`SELECT * FROM MyTable ORDER BY ID DESC, Name DESC`。 17. 更新记录:`UPDATE MyTable SET Name = CONCAT(Name, '_', ID) WHERE ID IN (2, 10)`。 18. 删除记录:`DELETE FROM MyTable WHERE ...

    基于SQL查询的数据库加密中间件的设计与实现.pdf

    在客户端发起查询请求时,中间件会初始化密钥,将加密后的数据重新组装SQL语句并发送到数据库服务器。数据库服务器存储加密后的数据。当客户端请求检索或统计信息时,中间件会先对相关字段加密,然后执行请求,并将...

    java编写的基于mysq limit的分页小插件 升级版

    6. **扩展性**:除了基本的分页功能,升级版可能还提供了额外的功能,如统计总记录数、支持动态排序等,以满足不同场景的需求。 7. **文档与示例**:通过博文链接(https://skymr.iteye.com/blog/668859)可以获取...

    解决海量数据的新思路——分布式数据库收集.pdf

    分布式数据库是一种应对海量数据处理的有效解决方案,它将...然而,设计这样的系统需要考虑诸多因素,包括SQL语句的解析、数据分布策略、并发控制以及性能优化等,这些都是实现高效分布式数据库必须面对的技术难题。

    mysql性能调优思路1

    1. **定位慢SQL语句**:首先,我们需要识别那些执行效率低下的SQL语句,这是性能优化的基础。可以使用`SHOW FULL PROCESSLIST`命令实时查看当前正在执行的SQL,找出运行时间长的语句。另外,`mysqldumpslow`工具则...

    mycat分享技术

    - **SQL解析与重写**:接收到前端应用发送的SQL语句后,Mycat 首先对其进行解析,确定SQL语句中涉及的表以及操作类型。 - **数据分片**:根据预定义的分片规则,Mycat 能够将数据分布到不同的物理数据库中,实现数据...

    银行各部门笔经汇总.doc

    - (3)将部门改为“主机开发”的SQL更新语句`:UPDATE student SET sdep = '主机开发' WHERE sdep = '网上开发' AND sno IN (SELECT sno FROM s WHERE o = 'as/400')` 针对银行笔试,考生需要注意: - 了解考试...

    黑马面试宝典知识点复习

    - **COUNT**:统计行数。 - **SUM**:求和。 - **AVG**:平均值。 - **MAX/MIN**:最大值/最小值。 #### SQL之SQL注入 - **定义**:一种安全漏洞,攻击者可以通过在SQL查询中插入恶意SQL语句来控制数据库服务器执行...

Global site tag (gtag.js) - Google Analytics