mysql使用ORDER BY和GROUP BY
发表于|更新于
|浏览量:
今天写代码时遇到一个需求是这样的:
取表内最新的一条数据,根据用户名分组
本来以为又是那种
需求,然后就开始写sql,写完一运行,报错。。。
然后发现GROUP BY必须放在ORDER BY的前面
但这样又会导致不能取最新的一条数据
于是用了一个“子查询”的办法解决
1 | <select id="cowBeer" resultType="map" parameterType="map"> |
相关推荐
2023-12-13
boot项目添加运行参数的maven插件
不存在十全十美的文章,如同不存在彻头彻尾的绝望。——村上春树 之前说了 单元测试添加运行参数的maven插件 难道对于非单元测试就只能手动写命令了吗?当然不是!我们只需要使用: 123456789101112131415161718192021222324252627282930313233<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> <config...
2023-10-17
srs实现合流
伸出你的手去援助别人,而不是伸出你的脚去绊倒他们。——戴尔·卡耐基 文档: https://ossrs.net/lts/zh-cn/docs/v5/doc/webrtc#room-to-live 合流需要打开配置文件的配置,主要是rtc的 1234567891011121314151617181920212223vhost __defaultVhost__ { http_hooks { enabled on; on_publish http://host.docker.internal:8001/im-signaling-service/srs_callback/on_publish; on_unpublish http://host.docker.internal:8001/im-signaling-service/srs_callback/on_unPublish; on_play http://host.doc...
2023-02-07
mp查询出来时间自动去掉秒
陷入经济困境的人,是最容易被利用的——加藤谛三 由于需求变动,原先存入为LocalDateTime的,现在需要精确到分,但保留数据库原有的数据 所以查询时,只精确到分,将秒去掉 我们使用typeHandler,将秒设置为00 首先添加@TableName(autoResultMap = true)然后添加@TableField(typeHandler = DeSecondHandler.class) 12345678910111213141516171819202122232425package com.ruben.simplestreamquery.pojo.po;import com.baomidou.mybatisplus.annotation.TableField;import com.baomidou.mybatisplus.annotation.TableName;import com.ruben.simplestreamquery.handler.DeSecondsHandler;import lombok.Data;import java.time.Local...
2023-05-21
针对map的lambda
雄辩是银,沉默是金。——佚名 例如原来的: 123Steam.of(Maps.of("foo", "bar")) .map(e -> e.getKey() + e.getValue()) .findFirst(); 现在 123Steam.of(Maps.of("foo", "bar")) .map(SerFunc.entryFunc((key, value) -> key + value)) .findFirst(); 可以给key和value取不同的变量名,源码是 123static <K, V, R> Function<Map.Entry<K, V>, R> entryFunc(BiFunction<K, V, R> biFunc) { return entry -> biFunc.app...
2022-01-20
设置并行流最大线程数
做你自己,因为别人都有人做了。——王尔德 我们可以使用如下方式获取并行流线程数 并行流线程数获取 如果我们需要更改,则可以设置系统属性: 1System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "8"); 例如此处设置为8 则再次获取 可以看到是8个子线程+1个主线程,也就是9个线程 还可以使用ForkJoinPool.getCommonPoolParallelism()直接获取ForkJoinPool中允许设置的最大线程数
2020-08-21
Bigdecimal
转载,原文 一、简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。 二、构造器描述BigDecimal(int) 创建一个具有参数所指定整数值的对象。BigDecimal(double) 创建一个具有参数所指定双精度值的对象。BigDecimal(long) 创建一个具有参数所指定长整数值的对象。BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。 三、方法描述add(BigDecimal) BigDec...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog