【问题标题】:How to use contains in JPQL如何在 JPQL 中使用 contains
【发布时间】:2018-10-03 10:09:22
【问题描述】:

我正在尝试将以下 LinQ 查询转换为 JPQL。我不知道如何在 jpql 中使用 contains。我尝试如下但我收到错误

LinQ 查询语法

var Rooms = from rooms in EspaceDB.Rooms
                            where roomIDList.Contains(rooms.nRoomID.ToString())
                            select rooms;

JPQL 查询语法

我试试:

@Query("select room from Room as room where roomIDList.contains(room.nRoomId.ToString())")
    List<Room> recoverDeletedRoom(@Param(value = "roomIDList") String[] roomIDList);

还有:

@Query("select room from Room as room where contains(room.nRoomId,roomIDList)")
  List<Room> recoverDeletedRoom(@Param(value = "roomIDList") String[] roomIDList);

错误:

antlr.NoViableAltException:意外的 AST 节点:

【问题讨论】:

    标签: java jpql contains


    【解决方案1】:

    这应该适合你:

    @Query("select room from Room room where room.id IN (:roomIDList)")
    List<Room> recoverDeletedRoom( @Param("roomIDList") List<String> roomIDList);
    

    【讨论】:

      猜你喜欢
      • 2018-12-05
      • 2022-09-28
      • 2012-06-16
      • 1970-01-01
      • 2018-11-13
      • 2020-04-17
      • 2014-08-28
      • 2017-10-07
      相关资源
      最近更新 更多