
数据库
奔跑的阳光
这个作者很懒,什么都没留下…
展开
-
sql更新某条数据字段为1,其他数据变为0
应用场景:表中永远只能有一条数据值为1,例如只能设置一条商品推荐(值为1),将另一条商品数据设置为推荐后,之前设置的推荐商品变为不推荐(值为0)。 <update id="updateRecommend"> UPDATE t_db_report SET highly_recom = (id = #{id}) </update> highly_recom为数据库自定义自定,#{id}为动态传入id。 ...原创 2021-11-02 18:27:12 · 2293 阅读 · 0 评论 -
sql:case when then else
case when 语句查询的是单条数据,若要查满足条件下的某个值的和,例如我要查is_check=1时的price的和: 应该用SUM(CASE is_check WHEN 1 THEN price END) AS checkPrice 而不是CASE is_check WHEN 1 THEN SUM(price) ENDAS checkPrice select sum(case is_check when 0 then price end) AS noCheckPrice, sum(CA..原创 2020-07-16 16:35:54 · 200 阅读 · 0 评论 -
springboot+mybatis+mysql 存储单字段为数组格式的解决方案
1.使用场景 需求为:前端传的某个字段为数组类型,但mysql中不支持直接存储数组,只能转为字符串存储,取出时又得转回数组,这样无论是在前端转换还是后端转换都是费时费力的。 这样,我们可以利用mybatis的BaseTypeHandler类帮我们完成自动转换。 第一步: 将对象里的字段改为JSONArray类型。 第二步:继承BaseTypeHandler并重写里面的某些方法。 ...原创 2019-08-28 13:48:12 · 8816 阅读 · 2 评论