MYSQL常见查询-SELECT

2023-11-04

1.查看某一产品销量城市排行榜前10名,并展示其同环比

思路:取出今日、昨日、上周该商品的销量,通过开窗函数计算同环比

代码:

SELECT

*

FROM

(

SELECT

        n.*,

        (

        ( FIRST_VALUE(n.num) OVER (PARTITION by city_id order by dt DESC) -LEAD(n.num,1) OVER (PARTITION by city_id order by dt DESC))*1.0/

LEAD(n.num,1) OVER (PARTITION by city_name order by dt DESC)

        )*1.0 as rate_day,      ----日环比

        (

        (FIRST_VALUE(n.num) over(partition by city_id order by dt DESC)-LEAD(n.num,2) OVER (PARTITION by city_id order by dt DESC))*1.0/

(LEAD(n.num,2) OVER (PARTITION by city_id order by dt DESC))

        )*1.0 as rate_week        ----------周同比

from

        (

        SELECT

                m.*,

                n.city_name

        from (

                SELECT

                        to_date(to_char(to_date(statis_time,'yyyymmddhh24mi'),'yyyymmdd'),'yyyymmdd') AS dt,         --时间

                        city_name,         --城市名称

                        COALESCE(sum(finish_order_num),0) AS num      销量

        FROM 城市销售数据表 

        WHERE

                (

                to_date(to_char(to_date(statis_time,'yyyymmddhh24mi'),'yyyymmdd'),'yyyymmdd') = CURRENT_DATE     --取出今天数据

                or

                to_date(to_char(to_date(statis_time,'yyyymmddhh24mi'),'yyyymmdd'),'yyyymmdd') = CURRENT_DATE-1          --取出昨天数据

                or

                to_date(to_char(to_date(statis_time,'yyyymmddhh24mi'),'yyyymmdd'),'yyyymmdd') = CURRENT_DATE-7          --取出上周数据

                )

        GROUP BY         

                city_name

                ,to_date(to_char(to_date(statis_time,'yyyymmddhh24mi'),'yyyymmdd'),'yyyymmdd')

) as m

WHERE m.dt=CURRENT_DATE    --------只筛选当天数据

order by m.num desc     ---------按销售额排序、倒叙

limit 10   -------取出前十名

结果展示:

dt                     城市          销售额      日环比      周同比

20221223        北京          500000      -0.05        0.1

20221223        上海          400000      -0.6         -0.3

20221223        广州          300000      0.7          0.1

20221223        南京          200000      -0.05        0.1

20221223        武汉          100000      -0.05        0.1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MYSQL常见查询-SELECT 的相关文章

  • 如何搜索例程的内容/(SP-触发函数)

    我需要在数据库内所有例程的例程主体 存储过程 函数 触发器 中搜索文本 我该怎么做 Thanks SELECT OBJECT NAME object id FROM sys sql modules WHERE definition LIKE
  • JDBC插入实数数组

    我试图将一个真实的数组插入到 postgresql 数组中 该表的定义是 String sqlTable CREATE TABLE IF NOT EXISTS ccmBlock sampleId INTEGER block REAL 插入内
  • 在存储过程中验证用户的最简单方法?

    我需要一个存储过程 可以通过发送以下内容来检查登录尝试时他们是否是有效用户login and password查看它们在数据库中是否匹配 有没有一种简单的方法可以做到这一点 如果没有更多信息 我目前能提供的最好信息是 CREATE STOR
  • 如何从批量数据中的mysql列中删除所有非数字字符

    我想从列中删除所有非数字字符 我的数据库中有大量数据 目前我正在使用以下链接中描述的方法 http venerableagents wordpress com 2011 01 29 mysql numeric functions http
  • 如何在 SEQUELIZE (nodeJS) 中创建触发器?

    我正在尝试使用sequelize 创建一个触发器 主要思想是创建一个实例CONFIG创建后USER USER MODEL module exports function sequelize DataTypes var User sequel
  • st_intersects 与 st_overlaps

    这两个查询有什么区别 select a gid sum length b the geom from polygons as a roads as b where st intersects a the geom b the geom gr
  • 将庞大数据库从亚马逊RDS导出到本地mysql

    我在 Amazon RDS 上有一个 mysql 数据库 大约 600GB 数据 我需要将其移回本地专用服务器 但我不知道从哪里开始 每次我尝试初始化 sqldump 时它都会冻结 有没有办法将其移至 S3 甚至可能在开始下载之前将其分成更
  • MySQL/PDO::quote() 尽管使用 PDO::PARAM_INT 参数,但仍在整数周围加上引号

    无论我传递给什么值 数据类型对 它都会出现 pdo gt quote value type 它总是将其引用为字符串 echo pdo gt quote foo PDO PARAM STR foo as expected echo pdo g
  • Mysql用in语句限制

    我正在写一个查询 SELECT user bookmarks id as user bookmark id bookmark id user bookmarks user id bookmark url bookmark website b
  • 删除行导致锁超时

    当我尝试从表中删除行时 我不断收到这些错误 这里的特殊情况是我可能同时运行5个进程 该表本身是一个 Innodb 表 约有 450 万行 我的 WHERE 子句中使用的列没有索引 其他指数按预期运行 这是在事务中完成的 首先删除记录 然后插
  • 如何在 DB2 中创建返回序列值的函数?

    如何在 DB2 中创建一个从序列中获取值并返回该值的函数 应该可以在 select 或 insert 语句中使用该函数 例如 select my func from xxx insert into xxx values my func 基本
  • 删除数据库中的行后如何重新排序ID

    我正在使用 C 来制作具有 sql 数据库的程序 在数据库中我有一个名为Workers 它有一个自动增量和主键ID column 当我删除一条记录时 ID 之间会出现间隙 删除记录后如何重新排序 ID UPDATE 我要做的就是找到记录后将
  • 解析带下划线的 SQL Server 数字文字

    我想知道它为什么有效以及为什么它不返回错误 SELECT 2015 11 Result 11 2015 第二种情况 SELECT 2 1 a a 2 1 检查元数据 SELECT name system type name FROM sys
  • SQL查询查找表的主键?

    我怎样才能找到哪一列首要的关键使用查询来创建表 这是重复的question https stackoverflow com questions 893874 mysql determine tables primary key dynami
  • 日期语句之间的 JPQL SELECT [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我想将此 SQL 语句转换为等效的 JPQL SELECT FROM events WHERE events date BETWE
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • 通过触发器应用表的列权限

    现在 我有一个名为 Members 的表 其中包含内容 分为联系人数据 银行数据 现在 管理员应该能够创建 更新 删除用户 这些用户保存在另一个表中 该表只能访问管理员 用户应该获得自己的 mysql 用户帐户 管理员还应该能够设置权限 例
  • 如何通过SQL查询检查是否有JSON函数?

    有SQL 2016 中的 JSON 函数 https learn microsoft com en us sql t sql functions json functions transact sql例如 JSON VALUE JSON Q
  • SQL 更新 - 更新选定的行

    我正在使用 SQL Server 2008 我有一个名为MYTABLE有两列 ID STATUS 我想编写一个存储过程来返回其记录STATUS是 0 但是这个存储过程必须更新STATUS返回行数为 1 如何在单个查询中执行此选择和更新操作
  • 是否可以引用同一个表中的不同列?

    如果博客有一个 类别 表 如下所示 CREATE TABLE categories id INTEGER PRIMARY KEY AUTO INCREMENT parent id INTEGER NOT NULL name VARCHAR

随机推荐

  • 给360安全浏览器设置一个图片背景/主题

    此方法适用于360安全浏览器 其他浏览器请移步 给浏览器设置一个图片背景 主题 看看效果 1 点击 管理 gt 添加 gt 搜索stylebot gt 安装 2 安装好了会有小图标 S 或者小图标 css 点击 S css图标 gt Opt
  • 测试用例应该怎么写

    一 背景 有些测试同学 写测试用例的时候 直接就是将需求文档上的内容抄一遍 转换成测试用例的格式 没有加入任何自己的思考和理解 没有融入任何测试方法论 测试完全依赖于需求文档的质量 依赖于产品经理保姆级的服务 需求写得细 测试用例覆盖就全面
  • 详解numpy.random.shuffle函数

    文章目录 函数原型 参数解析 该函数的注意事项 例子 示例代码 示例结果 参考 numpy的random模块中的shuffle函数用于np ndarray数组中的元素打乱顺序 进打乱多维数组的第一维顺序 本博客详细节将该函数的API 并给出
  • Hive---拉链表设计与实现

    1 数据同步问题 Hive在实际工作中主要用于构建离线数据仓库 定期的从各种数据源中同步采集数据到Hive中 经过分层转换提供数据应用 比如每天需要从MySQL中同步最新的订单信息 用户信息 店铺信息等到数据仓库中 进行订单分析 用户分析
  • [Linux系统编程]守护进程/线程(四)

    距离上一次利用高并发技术实现360度行车记录仪功能已经过去半年了 开始写一系列关于系统编程和网络编程内容进行总结 温故而知新 欢迎大家讨论学习 2021 09 05 补充 1 dup2与dup区别是dup2可以用参数newfd指定新文件描述
  • java并发基础(二)

    java并发编程实战 终于读完4 7章了 感触很深 但是有些东西还没有吃透 先把已经理解的整理一下 java并发基础 一 是对前3章的总结 这里总结一下第4 5章的东西 一 java监视器模式 概念 把对象的所有可变状态都封装起来 并由对象
  • 大数据开发教程——Apache Hive实战

    Hive 建表高阶语句 CTAS and CTE 重点 CTAS Create Table As Select CREATE TABLE ctas employee as SELECT FROM employee 基于select查询的结果
  • linux下dig命令安装,在Linux系统上安装和使用dig和nslookup命令

    1 前言 在本文中 您将学习如何在linux上安装dig命令和nslookup命令以及如何使用这些命令查找域名相关的信息 这些命令用于网络故障排除和收集有关域名的信息 dig是域名信息Gopher的缩写 是一个DNS查找工具 用于探测DNS
  • python自动化笔记(七)局部变量和递归

    my num 200 全局变量 def my func my num 10 局部变量 函数内部有同名的局部变量 优先采用局部变量 print my num def my func1 global num 局部变量转换为全局变量 也可修改全局
  • IDEA打包Maven项目失败-InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty

    IDEA中运行Maven package报错 Could not transfer artifact org apache maven plugins maven resources plugin pom 2 6 from to centr
  • 单线多拨插件安装_折腾小日记三:爱快PKopenwrt多拨实测(更新版)

    前言 受困于运营商较小的带宽或者高昂的资费 网络爱好者都非常热衷于通过多拨来提升网速 但是现在绝大部分地区都限制了同时拨号设备数量 为了能多拨只能使用稍微复杂的 并发多拨 的方法 并发多拨让多个虚拟wan同时拨号 在运营商的账号在线检测还没
  • 手动下载maven依赖

    最近做SpringBoot项目时 需要添加spring boot admin starter server 依赖 刷新Maven后提示找不到这个依赖的版本 尝试各种办法 更换私服地址 删除缓存等 后是还是无法下载 只能到Maven的中央仓库
  • C语言超市计价收款系统

    学习一个月的C语言 写了一个简易的超市计价收款系统 源码如下 include
  • Anaconda常用操作命令

    Anaconda常用命令操作指南 参考链接 Anaconda完全入门指南 Anaconda常用命令总结 1 更换国内像源 conda config add channels https mirrors tuna tsinghua edu c
  • OMNI USDT 0.12.0 环境部署

    文章目录 一 生成Omni Core v0 12 0版本镜像 二 启动Omni Core v0 12 0版本容器 一 生成Omni Core v0 12 0版本镜像 编写Dockerfile cd opt docker usdt image
  • 软件测试中静态测试和动态测试的区别

    1 测试的部分不同 静态测试是指测试不运行的部分 只是检查和审阅 如规范测试 软件模型测试 文档测试等 动态测试是通常意义上的测试 也就是运行和使用软件 2 测试方式不同 静态测试 通过评审文档 阅读代码等方式测试软件称为静态测试 通过运行
  • 【Python入门系列】第十四篇:Python Web开发

    文章目录 前言 一 PythonWeb开发简介 二 开发准备工作 三 开发步骤 四 开发案例 1 使用Flask框架创建一个简单的Web应用程序 2 使用Django框架创建一个简单的待办事项应用程序 3 使用Flask框架创建一个简单的博
  • 【数据挖掘】(一)用jupyter编程

    为熟悉jupyter 找了一本书练习 参考资料 Python数据挖掘入门与实践 数据集 https github com packtpublishing learning data mining with python 第一行代码 impo
  • 测试用例设计方法

    一 等价类划分 二 边界值分析法 三 场景法 四 判定表 五 因果图 六 错误推测法 七 正交试验法 一 等价类划分 定义 依据需求将输入划分成若干个等价类 从等价类中选定一个测试用例 如果该用例通过 则表明整个等价类通过 适用范围 适用于
  • MYSQL常见查询-SELECT

    1 查看某一产品销量城市排行榜前10名 并展示其同环比 思路 取出今日 昨日 上周该商品的销量 通过开窗函数计算同环比 代码 SELECT FROM SELECT n FIRST VALUE n num OVER PARTITION by