使用db.Client.UnionAll(listQuery).MergeTable() 分页查询别名问题 返回

SqlSugar 处理完成
7 322


565973ea5218a3e7df639482850212f.png


使用db.Client.UnionAll(listQuery).MergeTable() 查询后再次使用子查询过滤数据,然后分页查询,查询总行数时,别名未能正确指定

热忱回答7

  • fate sta fate sta VIP0
    2025/8/13

    别名就改成mgetable不要用p

    0 回复
  • fate sta fate sta VIP0
    2025/8/13

    一些复杂查询只能这么用

    0 回复
  • 直接ToListAsync是可以执行查询的,查看sql别名也是正确指定了的,在分页查询总行数时则别名未能按定义的别名指定,希望有时间可以完善一下

    0 回复
  • fate sta fate sta VIP0
    2025/8/13

    @秋雨梧桐叶落:可以提供一个DEMO  能重现你说的,删掉OBJ和BIN打包上传。不需数据库只要几个类和代码能重现

     

    0 回复
  • @fate sta:感谢回复信息,通过别名mgetable可以查询;不处理也不影响使用;附件为重现demo

    TestDemo.zip


    0 回复
  • @fate sta:开发环境使用的mysql 5.7.44 版本可以执行成功,但是在服务器环境8.4.5,执行失败,查看原因是分页查询count时,少了一层select  from,where条件被放在了最外层

    0 回复
  • fate sta fate sta VIP0
    2025/8/15

    qlSugarCore 5.1.4.200-preview25


    勾一下预览,已修复

    0 回复