MyBatis-plus之实现获取某个字段的最大值

发布时间 2023-04-04 16:07:18作者: 罗毅豪

实现获取某个字段的最大值,如sort字段,示例如下:

KapokBlockController.java

kapokBlockService.getMaxSort();

IKapokBlockService.java

package com.cmit.kapok.system.api.kapok_block;

import com.cmit.kapok.system.entity.kapok_block.KapokBlock;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author luoyihao
 * @since 2023-03-10
 */
public interface IKapokBlockService extends IService<KapokBlock> {
    public int getMaxSort();
}

KapokBlockServiceImpl.java

package com.cmit.kapok.system.service.kapok_block;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmit.kapok.system.api.kapok_block.IKapokBlockService;
import com.cmit.kapok.system.entity.kapok_block.KapokBlock;
import com.cmit.kapok.system.service.kapok_block.mapper.KapokBlockMapper;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * <p>
 * 服务实现类
 * </p>
 *
 * @author luoyihao
 * @since 2023-03-10
 */
@Service
public class KapokBlockServiceImpl extends ServiceImpl<KapokBlockMapper, KapokBlock> implements IKapokBlockService {
    @Resource
    private KapokBlockMapper kapokBlockMapper;

    public int getMaxSort() {
        return kapokBlockMapper.getMaxSort();
    }
}

KapokBlockMapper.java

package com.cmit.kapok.system.service.kapok_block.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cmit.kapok.system.entity.kapok_block.KapokBlock;
import org.apache.ibatis.annotations.Select;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author luoyihao
 * @since 2023-03-10
 */
public interface KapokBlockMapper extends BaseMapper<KapokBlock> {
    @Select("select ifnull(max(sort),0) from kapok_block")
    int getMaxSort();
}

即可。