您可以使用以下 Oracle SQL 语句来实现:

SELECT * FROM (
    SELECT id,user_id,menu_id,'count',create_time,update_time FROM T_IAC_USER_ACTION 
    WHERE (user_id = :id AND menu_id IN (:userAssociatedMenuIdSet)) 
    ORDER BY 'count' ASC
) WHERE ROWNUM <= 5;

其中,:id 和 :userAssociatedMenuIdSet 是参数,您可以使用 PreparedStatement 来设置参数并执行查询。

您可以使用 @Select 注解来声明该方法将执行 SQL 查询,例如:

@Select("SELECT * FROM (SELECT id,user_id,menu_id,'count',create_time,update_time FROM T_IAC_USER_ACTION WHERE (user_id = :id AND menu_id IN (:userAssociatedMenuIdSet)) ORDER BY 'count' ASC) WHERE ROWNUM <= 5;")
List<UserAction> getUserActions(@Param("id") Long id, @Param("userAssociatedMenuIdSet") Set<Long> userAssociatedMenuIdSet);

原文地址: https://www.cveoy.top/t/topic/nw5h 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录