如何编写RoomDao查询以基于Android中单个表中的可选mulitplecoulmns搜索唯一数据

我有 5 个用于过滤的编辑输入字段,用户可以在 5 中的任何编辑字段中提供输入。根据用户输入,我如何使用 Room 单个查询来过滤单个表中的唯一行按钮点击 android?

我有 5 个用于过滤的编辑输入字段,用户可以在 5 中的任何编辑字段中提供输入。根据用户输入,我如何使用 Room 单个查询来过滤单个表中的唯一行按钮点击 android?

尝试这给了我多个值通过标准,我想要唯一的值

@Query("SELECT * from TBL_PHYSICAL_COUNT_LIST where ((SUBINV IS NOT NULL AND SUBINV != '') AND SUBINV=(:subInv)) OR ((LOCATOR IS NOT NULL AND LOCATOR != '') AND LOCATOR=(:locatorNumber)) OR ((ITEMNUMBER IS NOT NULL AND trim(ITEMNUMBER) > '') AND ITEMNUMBER=(:itemNumber))  OR ((LOTNUMBER IS NOT NULL AND LOTNUMBER != '') AND LOTNUMBER=(:lotNumber)) OR ((TAGNUMBER IS NOT NULL AND trim(TAGNUMBER) <> '') AND TAGNUMBER=(:tagNumber))")
List<TBL_PHYSICAL_COUNT_LIST> getTblPhysicalCountListByFilter(String subInv,String locatorNumber,String itemNumber,String lotNumber,String tagNumber) ;

对于 EG:说我输入标记号 '0601' 和项目编号 = '1000004',查询应返回图像中的第一个元素,另一个例如说用户选择 subInventory = 'Accessorie',locatorNumber = '2',lotnumber = '2010,查询应返回图像中的第二个元素,因此基于用户输入我想要 1 个查询,应忽略空白输入并根据提供的输入进行过滤

enter image description here/

0

我通过更新这样的查询来解决它:

@Query("SELECT * from TBL_PHYSICAL_COUNT_LIST " +
            "where (:subInv IS NOT NULL AND SUBINV LIKE :subInv || '%') " +
            "AND (:locatorNumber IS NOT NULL AND LOCATOR LIKE :locatorNumber || '%') " +
            "AND (:itemNumber IS NOT NULL AND ITEMNUMBER LIKE :itemNumber || '%') " +
            "AND (:lotNumber IS NOT NULL AND LOTNUMBER LIKE  :lotNumber || '%') " +
            "AND (:tagNumber IS NOT NULL AND TAGNUMBER LIKE  :tagNumber || '%') ")
List<TBL_PHYSICAL_COUNT_LIST> getTblPhysicalCountListByFilter(String subInv,
                                                                  String locatorNumber,
                                                                  String itemNumber,
                                                                  String lotNumber,
                                                                  String tagNumber);

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(438)
将Office365REST日历ID映射到EWS日历项 ID
上一篇
NETGEAR路由器:DNS服务器没有响应
下一篇

相关推荐

  • android源码分析:Android源码中的Activity生命周期分析

    Android源码分析是一种技术,它可以帮助开发者更好地理解Android系统的内部工作原理,以及如何使用它来构建应用程序。它还可以帮助开发者更好地了解Android系统的不同组件之间的交互,以及如何与其他系统组件进行交互。…

    2023-07-03 15:20:53
    0 49 81
  • android 单元测试框架使用 JUnit 和 Mockito 进行单元测试

    Android 单元测试框架是一种用于运行 Android 应用程序中的单元测试的框架。它可以帮助开发人员在不同设备上测试应用程序,以确保应用程序在不同设备上正常运行。…

    2023-06-27 08:45:20
    0 45 89
  • android opencv的人脸识别实现快速准确的人脸检测与追踪

    Android OpenCV 人脸识别是一种使用OpenCV库来检测和识别图像中的人脸的技术。它可以用于安全验证,认证,监控或者其他应用场景。…

    2023-04-16 05:16:41
    0 85 84
  • android cursor遍历 title = row[0] value = row[1] dic[titl

    示例示例Android中使用Cursor遍历数据库的步骤如下:获取一个Cursor对象,通过的()方法来获取;…

    2023-07-29 02:01:21
    0 67 38
  • android context类:如何使用Android Context类进行应用程序开发

    Android Context类是Android应用程序开发中最重要的类之一,它提供了访问应用程序环境的全局信息。Context类封装了应用程序的运行环境,它提供了访问应用程序的资源、类和服务的方法。…

    2023-01-03 07:55:24
    0 15 25
  • eclipse android开发:Android开发入门指南

    Eclipse Android开发是一种基于Android SDK的应用程序开发工具,它使开发者能够使用Eclipse IDE来创建、调试和部署Android应用程序。它提供了一个可视化的界面,可以让开发者在Android应用程序中创建和编辑代码,并且可以让开发者在不同的Android设备上测试和调试应用程序。…

    2023-05-11 01:14:19
    0 79 76
  • android 系统签名 Discover the Benefits of System Signing

    Android 系统签名是一种安全机制,它可以防止应用程序在安装或更新时被恶意修改。Android 系统签名使用数字签名来标识应用程序的发布者,并确保应用程序的完整性和安全性。…

    2023-05-04 02:12:41
    0 21 69
  • android seekbar样式:栏 @drawable/seekbar_background @drawable

    android seekbar样式是指在Android应用程序中,用户可以使用SeekBar来进行选择和滑动操作。SeekBar可以用来调整音量、亮度等,也可以用来控制视频的播放进度。…

    2023-11-10 10:16:18
    0 80 86

发表评论

登录 后才能评论

评论列表(8条)