mysql case when 不命中缓存

news2024/10/6 20:37:22

case when 在sql 中非常方便数据不同维度统计,但是也会出现mysql 索引不命中问题,当多个case 出现时,需要提取出来到where里面优化

优化后

SELECT
    date(RecordTime) AS date,
    count(
        DISTINCT CASE
        WHEN `Param` = '1' THEN
            UserID
        END
    ) AS 'h',
    count(
        DISTINCT CASE
        WHEN `Param` = '2' THEN
            UserID
        END
    ) AS 's',
    count(
        DISTINCT CASE
        WHEN `Param` = '4' THEN
            UserID
        END
    ) AS 'z'
FROM
    user_prop_log_202310
WHERE
    Category = '42'
GROUP BY
    DATE(RecordTime)

优化前:

SELECT
    date(RecordTime) AS date,
    count(
        DISTINCT CASE
        WHEN `Category` = '42'
        AND `Param` = '1' THEN
            UserID
        END
    ) AS 'h',
    count(
        DISTINCT CASE
        WHEN `Category` = '42'
        AND `Param` = '2' THEN
            UserID
        END
    ) AS 's',
    count(
        DISTINCT CASE
        WHEN `Category` = '42'
        AND `Param` = '4' THEN
            UserID
        END
    ) AS 'z'
FROM
    user_prop_log_202310
GROUP BY
    DATE(RecordTime)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1083535.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java基于SpringBoot+Vue的考研资讯平台

1 简介 大家好,我是程序员徐师兄,今天为大家带来的是Java基于SpringBootVue的考研资讯平台 Java基于SpringBoot的考研资讯平台,在系统当中学生可以根据不同的信息来实现该网站的考研资讯平台信息的管理。 系统主要分为前台和后台。主要包括…

linux之cpu模拟负载程序

工作中我们经常会遇到这样的问题,需要模拟cpu的负载程序,例如模拟cpu占有率抬升10%、20%、50%、70%等,那这样的程序应该如何实现呢?它的原理是什么样的呢? 思想 创建一个应用程序,该应用程序的作用可以根…

如何实现制造业信息化转型?

一、制造业信息化历史 (1)1930年代 库存控制、管理 当时计算机系统尚未出现,人们为了解决库存管控的难题,提出了订货点法——当库存量降低到某一预先设定的点时,即开始发出订货单补充库存,直至库存量降低…

git删除文件

qt中点击删除文件后,不要从git版本控制中删除此文件 git rm test.txt 然后git add,git commit-m""

PLSQL下载并安装

官方下载连接:https://www.allroundautomations.com/registered-plsqldev/ 我们这边下载12.0.7版本 别忘了一起下载中文安装包 下载完全部安装一下 产品编号Product Code: kfj6yg6rfyhqcha6cbgs6fsw3kyje7a6qr 序列号Serial Number: 276182 口令Password: xs374c…

Linux简单磁盘命令

查看磁盘总站用量:df -h 查看当前目录的子目录磁盘占用情况: du -sh ./*

【高等数学】极限(下)(最全万字详解)

文章目录 极限(上)超链接5、极限存在法则5.1、夹逼准则5.1.1、数列夹逼准则5.1.2、函数夹逼准则5.1.3、第一重要极限 5.2、单调有界准则5.2.1、第二重要极限 6、函数的连续性与间断点6.1、函数的连续性6.1.1、定义6.1.2、左连续右连续 6.2、函数的间断点6.2.1、第一类间断点6.2…

炒股杠杆加杠杆安全|股票杠杆的安全玩法是怎样?

炒股杠杆和股票杠杆是一种高风险高收益的投资方式,需要在了解风险和做好风险管理的前提下进行。下面将介绍一些股票杠杆的安全玩法,帮助你更好地理解这种投资方式。 1. 了解自己的风险承受能力 在投资前,你需要了解自己的风险承受能力&…

云贝教育 |【DSI】Oracle数据库系列课-葵花宝典技术内幕实战课程

云贝教育DSI系列课: Oracle数据库深入浅出 零基础课程【DSI系列Ⅰ】 Oracle数据库特殊恢复原理与实战【DSI系列Ⅱ】 Oracle数据库 SQL Tuning【DSI系列Ⅲ】 Oracle数据库 DB Performance Tuning【DSI系Ⅳ】 DSI的意义 DSI课程是基于Oracle DSI403e和BBED工具修…

JUC并发工具类在大厂的应用场景详解

jdk提供了比synchronized更加高级的各种同步工具,包括 ReentrantLock 、 Semaphore 、 CountDownLatch 、 CyclicBarrier等,可以实现更加丰富的多线程操作。 (前三个是重点) 一. ReentrantLock ReentrantLock是一种可重入的独占锁,它允许同一…

spark集群环境下,实现人口平均年龄计算

文章目录 任务目标0. 版本信息1. 计算生成renkou.txt2. 文件上传至spark3. 上传文件时,可能出现的常见错误4. 编写spark文件5. 上传集群6. 集群环境下提交任务 任务目标 在虚拟机上部署spark集群,给定renkou.txt文件,输出平均年龄 renkou.t…

淘宝天猫商品评论数据接口,淘宝天猫商品评论API接口,淘宝API

淘宝商品评论数据接口可以通过淘宝开放平台API获取。 通过构建合理的请求URL,可以向淘宝服务器发起HTTP请求,获取商品评论数据。接口返回的数据一般为JSON格式,包含了商品的各种评价信息。获取到商品评论数据后,可以对其进行处理…

京东商品评论数据接口,京东API接口

京东商品评论内容数据接口步骤如下: 访问京东开放平台并注册一个开发者账号。创建一个应用并获取到API的权限。在开发者的控制台中找到API的使用文档。在文档中找到获取商品评论的API接口,点击获取key和secret。构造请求URL,请求URL的路径为…

SAP-MM/QM 移动原因维护

业务场景: 质检反馈现有的几种退货原因不能满足业务需求,需要增加,那么启用质检的退货原因和未启用质检的退货原因分别在哪里维护呢? 经过查找,退货原因不是按模块区分的,而是按移动类型确定的&#xff0c…

CRM系统:客户培育提高业绩的方法

多数情况下客户线索不会在首次沟通后就表现出强烈购买的意愿,这期间需要经过不断地沟通和培育才能进入到产品购买阶段。CRM客户管理系统帮助销售挖掘价值客户、高效跟进客户直至成交。下面说说,CRM系统如何客户培育提高业绩。 一、筛选潜在客户 企业客…

xcode打包macos报错:FlutterInputs.xcfilelist 和 FlutterOutputs.xcfilelist

xcode 打包macos的时候,报错如下: Unable to load contents of the file list: ‘macos/ephemeral/FlutterInputs.xcfilelist’ ‘macos/ephemeral/FlutterOutputs.xcfilelist’ 解决方案: 我的项目macos下没有找到FlutterInputs.xcfilelis…

[计算机入门] 应用软件介绍(娱乐类)

3.21 应用软件介绍(娱乐类) 3.21.1 音乐:酷狗 音乐软件是一类可以帮助人们播放、管理和发现音乐的应用程序。它们提供了丰富的音乐内容,用户可以通过搜索、分类浏览或个性化推荐等方式找到自己喜欢的歌曲、专辑或艺术家。音乐软件还通常支持创建和管理…

【LeetCode高频SQL50题-基础版】打卡第4天:第21~25题

文章目录 【LeetCode高频SQL50题-基础版】打卡第四天:第21~25题⛅前言即时食物配送II🔒题目🔑题解 游戏玩法分析IV🔒题目🔑题解 每位教师所教授的科目种类的数量🔒题目🔑题解 查询近30天活跃用户…

Adobe发布Firefly 2,提升图像质量和用户体验

🦉 AI新闻 🚀 Adobe发布Firefly 2,提升图像质量和用户体验 摘要:Adobe升级了其AIGC生图平台Firefly为Firefly 2,该版本通过引入矢量图生成功能、提升图像质量和增加多项新功能,大幅改善了用户体验。Firef…

用3-8译码器实现全减器

描述 请使用3-8译码器和必要的逻辑门实现全减器,全减器接口图如下,A是被减数,B是减数,Ci是来自低位的借位,D是差,Co是向高位的借位。 3-8译码器代码如下,可将参考代码添加并例化到本题答案中。 …