d202547

目录

[一、sql-每月交易 I](#一、sql-每月交易 I)

[二、 sql-按日期分组销售产品](#二、 sql-按日期分组销售产品)

三、sql-列出指定时间段内所有的下单产品

[四、 第k个大的数](#四、 第k个大的数)


一、sql-每月交易 I

题目意思就是把国家名称,和年月一样的分为一组,在这组数据中进行计数

题目给的日期格式是yyyy-mm-ss,可以使用left()函数截取一下

sql 复制代码
select  left(trans_date,7) as 'month',country,count(state) as 'trans_count',
count(if(state = 'approved',1,null)) as 'approved_count',
sum(amount) as 'trans_total_amount',
sum(if(state = 'approved',amount,0)) as 'approved_total_amount'
from Transactions
group by country,left(trans_date,7)

二、 sql-按日期分组销售产品

sql 复制代码
select sell_date,COUNT(DISTINCT product) num_sold,
       GROUP_CONCAT(DISTINCT product) products
from Activities
group by sell_date

三、sql-列出指定时间段内所有的下单产品

写的莫名其妙 感觉需要找个时间捋一下mysql 什么先执行了

sql 复制代码
select p.product_name,sum(if(left(order_date,7) = '2020-02',unit,0)) as 'unit'
from Orders o1 left join Products p on o1.product_id = p.product_id
group by o1.product_id
having sum(if(order_date like '2020-02%',unit,0)) >= 100

四、 第k个大的数

sql 复制代码
public int findKthLargest(int[] nums, int k) {
        PriorityQueue<Integer> p = new PriorityQueue<>(((a,b) -> b-a));
        for(int val : nums){
            p.offer(val);
        }
        while(k-- > 1){
            p.poll();
        }
        return p.peek();
    }
相关推荐
猫猫的小茶馆19 小时前
【Linux 驱动开发】七. 中断下半部
linux·arm开发·驱动开发·stm32·嵌入式硬件·mcu
cyber_两只龙宝19 小时前
LVS-DR模式实验配置及原理详解
linux·网络·云原生·智能路由器·lvs·dr模式
好好学习啊天天向上1 天前
C盘容量不够,python , pip,安装包的位置
linux·python·pip
我是伪码农1 天前
Vue 1.23
前端·javascript·vue.js
wqwqweee1 天前
Flutter for OpenHarmony 看书管理记录App实战:搜索功能实现
开发语言·javascript·python·flutter·harmonyos
li_wen011 天前
文件系统(八):Linux JFFS2文件系统工作原理、优势与局限
大数据·linux·数据库·文件系统·jffs2
wypywyp1 天前
2.虚拟机一直显示黑屏,无法打开,可能是分配的硬盘空间不够
linux·运维·服务器
SongYuLong的博客1 天前
TL-WR710N-V2.1 硬改刷机OpenWRT源码编译固件
linux·物联网·网络协议
AlfredZhao1 天前
Docker 快速入门:手把手教你打包 Python 应用
linux·docker·podman
HIT_Weston1 天前
107、【Ubuntu】【Hugo】搭建私人博客:模糊搜索 Fuse.js(三)
linux·javascript·ubuntu