- 博客(446)
- 收藏
- 关注
原创 @JsonSerialize注解使用方法
import com.fasterxml.jackson.core.JsonGenerator;import com.fasterxml.jackson.databind.JsonSerializer;import com.fasterxml.jackson.databind.SerializerProvider;import java.io.IOException;//JsonSerializer<Integer>:Integer为要转换的类型public class Seria.
2021-12-22 10:00:54 1568
原创 mysql数据库,表增加字段语句
-- mysql数据库,表增加字段语句ALTER TABLE table_course ADD COLUMN column2 VARCHAR (255) CHARACTERSET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '副标题' AFTER column1;
2021-12-20 10:24:28 1528
原创 mybatis 处理 in 语句过长
<select id="testList" resultType="YourBeanVo"> SELECT c.* FROM table_sheet c WHERE c.sheet_id IN <foreach collection="idList" index="index" item="item" open="(" close=")"> <if test="index != 0"> <choose> &l..
2021-12-18 13:08:27 874
原创 MySQL_查询连续打卡天数
-- MySQL_查询连续打卡天数SELECT user_id, check_date, checked, -- 签到标识 @pre_check :=IF (checked, @pre_check + 1, 0) AS 'continue_check_in'FROM test_check_in, (SELECT @pre_check := 0) initWHERE 1 = 1 -- AND user_id = '99560637587259414'ORDER BY user_i.
2021-12-15 14:23:15 1904
原创 MySQL 查询指定年份12个月份的订单支付金额
-- MySQL 查询指定年份12个月份的订单支付金额SELECT user_id, SUM(case month(a.create_time) when 1 then money else 0 end) AS Jan, SUM(case month(a.create_time) when 2 then money else 0 end) AS Feb, SUM(case month(a.create_time) when 3 then money else 0 end) AS Mar..
2021-12-08 15:34:17 1015
原创 MySQL 查询连续登陆天数大于7天的用户
-- MySQL 查询连续登陆天数大于7天的用户SELECT username, max(days) continue_days, min(login_date) start_date, max(login_date) end_dateFROM ( SELECT username, @continue_day := ( CASE WHEN ( @last_uid = username AND DATEDIFF(loginDate, @la..
2021-12-08 14:54:01 1075
原创 MySQL lead() 查询相邻数据的字段
SELECT user_id, order_code, create_time, LEAD (create_time, 1) OVER ( #返回的值是向前一行的orderDate,没有定义后续行,返回NULL。 PARTITION BY user_id ORDER BY CREATE_time DESC ) nextCreateDateFROM pay_orderORDER BY user_id DESC;...
2021-12-06 16:12:16 834
原创 MySQL Lead() 查询连续出现3次的数据
SELECT DISTINCT remarks AS ConsecutiveRemarksFROM ( SELECT Id, remarks, Lead (remarks, 1) OVER () AS remarks_1, #选择指定行的向前一行的内容 Lead (remarks, 2) OVER () AS remarks_2 #选择指定行的向前两行的内容 FROM score ) AS cWHERE c.remarks = c.remarks_1.
2021-12-06 16:06:06 446
原创 MySQL ROW_NUMBER()
MySQLR-- 3、分组加序号SELECT ROW_NUMBER () OVER ( PARTITION BY a.remarks ORDER BY a.score DESC ) AS rowNum, a.id, a.score, a.remarksFROM score a;OW_NUMBER()
2021-12-06 16:04:26 355
原创 MySQL dense_rank()
SELECT score, remarks, dense_rank () over ( PARTITION BY remarks ORDER BY score DESC ) AS 'Rank'FROM score;注意:dense_rank()是的排序数字是连续的、不间断。当有相同的分数时,它们的排名结果是并列的
2021-12-06 16:02:59 933
原创 MySQL rank()
SELECT score, remarks, rank () over ( PARTITION BY remarks ORDER BY score DESC ) AS 'Rank'FROM score;
2021-12-06 16:00:28 441
原创 Java 校验字符串中是否含有非法字符
// 校验字符串中是否含有非法字符public static String legalStringCheck(String content) { String illegal = "`-~_!#%^&*=+\\|{};:'\",<>/?○"; char isLegalChar = 't'; StringBuilder stringBuilder = new StringBuilder(""); //L1: ...
2021-11-30 08:48:07 3109
原创 MySQL 日期查询,将年、月、日分列显示
/*日期查询,年月日分开*/SELECT id, EXTRACT(YEAR FROM create_time) AS YEAR, EXTRACT(MONTH FROM create_time) AS MONTH, EXTRACT(DAY FROM create_time) AS DAYFROM train_commentORDER BY create_time DESC;
2021-11-22 11:08:32 1134
原创 MySQL 按天统计查询数量
/*按天统计*/SELECT count(id) countNum, DATE(create_time) createTimeFROM train_commentGROUP BY DATE(create_time)ORDER BY DATE(create_time) DESC;
2021-11-22 11:07:13 1307
原创 MySQL 查询日期的前一季度的时间
-- 查询日期的前一季度的时间SELECT create_time, DATE_ADD( create_time, INTERVAL '1-1' DAY_HOUR ) addOneDayOneHour, DATE_ADD( create_time, INTERVAL - 1 QUARTER ) lastQuarterFROM train_comment;
2021-11-22 11:04:53 567
原创 mysql 行转列查询
SELECT b.u2_id, a.material_id, MAX( CASE b.target_id WHEN '171220360770501' THEN b.column_value ELSE '' END ) AS 171220360770501_target, MAX( CASE b.target_id WHEN '171220353803921' THEN b.column_value ELSE '' END ) AS 17.
2021-11-18 18:10:47 496
原创 Mysql count()函数中多条件去重
SELECT a.id, a.xxx, count( DISTINCT concat(o.o_id, o.create_time) ) as target FROM yyyyy a JOIN zzzz o ON o.oid = a.vidGROUP BY a.id, a.xxx本例子中是两个字段确定一条数据,统计数量过程中对结果(o.o_id, o.create_time)去重...
2021-11-18 17:44:57 2131
原创 mysql 将字段属性修改成 text 类型
-- 将表 xxx_sheet 字段 xxx_content 类型改成 textALTER TABLE xxx_sheet CHANGE xxx_content xxx_content TEXT;
2021-11-11 10:12:52 7055
原创 带有转义字符的json字符串转成JavaBean
String jsonStr = JSON.toJSONString(paramMap); JSONObject jsonObject = JSON.parseObject(jsonStr); String detailList = jsonObject.getString("detailList"); List<YourBean> beanList = JSONObject.parseArray(detailLi...
2021-11-09 09:23:36 610
原创 mysql 查询指定月份的所有天数
SELECT DATE_FORMAT( date_add( last_day("2021-02-01"), INTERVAL ( cast( help_topic_id AS signed INTEGER ) - DAY (last_day("2021-02-01")) ) + 1 DAY ), '%Y-%m-%d' ) DAYFROM mysql.help_topicWHERE help_topic_id < DAY (last_.
2021-10-14 13:19:54 1150
原创 java stream() 字符串拼接
result = String.join(",",settledList);result = settledList.stream().collect(Collectors.joining(","));
2021-07-23 14:29:28 3466
原创 mybatis choose标签使用
<where> <choose> <when test="name != null and name.trim() != ''"> AND a.name = #{name} </when> <otherwise> AND (1=1) </otherwise> .
2021-07-23 14:27:21 118
原创 mysql 如何判断字符串是 null 或者 “”
CASE WHEN (ISNULL(c.old_name) = 1) || (LENGTH(trim(c.old_name)) = 0) THEN b. NAME ELSE c.old_name END AS `name`,
2021-07-10 10:50:40 154
原创 AtomicReference 使用
//全局数据 private static List<Base> baseList; //AtomicReference是作用是对”对象”进行原子操作。 提供了一种读和写都是原子性的对象引用变量。 //原子意味着多个线程试图改变同一个AtomicReference(例如比较和交换操作)将不会使得AtomicReference处于不一致的状态。 private Result setResultList(Param param){ Result result =..
2021-07-05 12:34:09 704
原创 AtomicBoolean 使用
outList.forEach(out -> { AtomicBoolean flag = new AtomicBoolean(true); //外部结果集 outList 包含内部参数结果集 paramList 的所有,即满足要求 paramList().stream().forEach(in -> { if (!out.getValueStr().contains(in)) { flag.set(false); } }); if ...
2021-07-05 12:32:37 385
原创 lambda sorted 排序,null数据排在后
//lambda sorted 排序,null数据排在后 resultList = resultList.stream() .sorted(Comparator.comparing(i -> i.getSort(), Comparator.nullsLast(Integer::compareTo))) .collect(Collectors.toList());
2021-07-05 12:31:52 2258
原创 lambda filter()结合map(),对数据处理,返回指定结果集
//初始数据 ResultForm targetList = new ArrayList<>(); //从初始数据中,获取糖超标的食品 resultVoList List<ResultVo> resultVoList = targetList.stream().filter(i -> { //1、先过滤目标信息 NowEntity now = xxxService.selectById(i.getId...
2021-07-05 11:05:55 1190
原创 mybatis update语句成功后,返回指定的字段
mybatis update语句成功后,返回指定的字段 mapper---------------------------------------将 keyColumn 属性的 num 映射到 YourBean 中的num属性 <update id="upt"> <selectKey resultType="java.lang.Integer" keyColumn="num" keyProperty="num" order="AFTER"> ...
2021-07-02 10:49:11 5143
原创 Java 递归数组求和
private static Double sumArr(String arr[], int arrSize) { if(arrSize == 1) { return Double.parseDouble(arr[0]); }else { return Double.parseDouble(arr[arrSize-1]) + sumArr(arr, --arrSize); } }
2021-06-26 10:22:44 441
原创 lambda count()方法,过滤满足条件的数据
//外部结果集(out)同时包含内部结果集(in)的所有内容,即满足要求 inList:{ "华帝", "美域" } outList:{ "麒麟,醉湖,华帝,光宇,美域", "琪琪,凯特,华帝", "会凌云,美域,清幽" } outList.forEach(out -> { int target = inList.size(); //2 ...
2021-06-26 10:00:55 2663
原创 lambda 获取属性最大值
Optional<YourBean> maxNum = result.stream().collect(Collectors.maxBy(Comparator.comparing(YourBean::getNum)));
2021-04-17 20:34:31 3703
原创 map复制
public static void mapCopy(Map paramsMap, Map resultMap) { if (resultMap == null){ resultMap = new HashMap(); } if (paramsMap == null){ return; } Iterator it = paramsMap.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry =..
2021-04-17 20:32:29 208
原创 SerializationUtils.clone()
//克隆后结果集 List<YourBean> listClone = new ArrayList<>(); //克隆过程 for (list) { YourBean copyItem = (YourBean) SerializationUtils.clone(item); listClone.add(copyItem); } //克隆后结果 多字段去重处理 List<YourBean> distinct = listClo...
2021-04-17 20:19:43 2504
原创 lambda 字符串拼接
String str = result().map(o -> o.getId() + "-" + o.getName()).collect(Collectors.joining(","));
2021-04-17 20:12:29 1063
原创 JSONObject.toJavaObject()的使用
YourBean yourBean= ((JSONObject) jsonResult).toJavaObject(YourBean.class);
2021-04-17 20:10:53 3239 1
原创 MySQL 向下递归查询,完全的sql语句不用函数
# 向下递归 select group_concat( ids._id ) FROM ( SELECT @r AS _id, ( SELECT @r := group...
2021-03-17 19:50:03 1121
原创 mybatis 嵌套查询list写法
public class BeanName implements Serializable{ private String id; private String propertyName1; private String propertyName2; private String propertyName3; private String propertyName4; private List<PriceInfoDto> priceInfo; //子集1 .
2021-02-20 08:45:03 1335 1
原创 Java 数组等距离拆分
/** * 数组等距拆分,26/4=7个数组 6个整的,最后2个为独立1个 * @param targ * @return */ public static List<List<String>> getList(List<String> tList, int targ) { List<List<String>>tEndList=new ArrayList<>(); ...
2021-02-04 11:26:59 356 1
原创 mybatis 递归查询所有子分类写法
Bean:public class Category { private Integer categoryid; //分类id private String name2; private String remarks; private List<Category> categoryList; //其下子集} Dao:List<Category> getAllCategory(Integer pid);mapping: <.
2021-02-04 11:02:28 518
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人