我可以在 NHibernate 中使用表值函数作为查询源吗?

2024-04-10

正如您可能已经猜到的,亲爱的社区,我有一个问题要问您。所以。 我希望 NHibernate 根据表值 sql 函数的评估来过滤查询结果。 NHibernate 生成的可能的 SQL 查询可能类似于以下内容:

SELECT
   [whatever]
FROM
   [whatever]
   INNER JOIN dbo.FnMyTableValuedFunction() as MyAlias ON
       [whatever].FirstDesiredKey = MyAlias.FirstDesiredKey
       AND
       [whatever].SecondDesiredKey = MyAlias.SecondDesiredKey

或者也可以这样写:

SELECT
    [whatever]
FROM
    [whatever]
WHERE
    EXISTS(
        SELECT
            1
        FROM
            dbo.FnMyTableValuedFunction() AS MyAlias
        WHERE
            [whatever].FirstDesiredKey = MyAlias.FirstDesiredKey
            AND
            [whatever].SecondDesiredKey = MyAlias.SecondDesiredKey
    )

我想使用 Criteria API 生成这样的查询。 据我所知,没有办法告诉 NHibernate 它应该加入什么以及如何加入。因此,可能存在的一种解决方案是第二种。
不幸的是,我没有足够幸运地了解如何使用表值函数作为相关子查询的查询源。你能帮我解决这个问题吗?


除 SQL(HQL、Criteria、Linq、QueryOver)之外的所有 NHibernate 查询方法都适用于实体,而不适用于表或任何其他数据库工件。

因此,如果您使用 Criteria,则需要映射FnMyTableValuedFunction到一个实体,或使用SQLCriterion对于任意 SQL 块。

对于后者,是的,EXISTS可能是要走的路。您可以将整个条件(包括 EXISTS)包含在 SQLCriterion 中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以在 NHibernate 中使用表值函数作为查询源吗? 的相关文章

随机推荐

  • querySelectorAll 是否支持 id 中的句点(.) 字符?

    querySelectorAll 是否支持 id 中的句点 字符 我的意思是如果我附加一个如下所示的元素 var div document createElement div div id my divid document body ap
  • Java 8 findFirst().isPresent() 比 count() > 0 更高效吗?

    鉴于我有一个流Stream
  • 如何在 CAFFE 的新网络中重复使用同一网络两次

    我有一个预训练的网络 我们称之为N 我想在新网络中使用两次 有人知道如何复制吗 然后我想为每个副本分配不同的学习率 例如 N1是第一个副本N N2是第二个副本N 新网络可能如下所示 N1 gt joint ip N2 gt layer 我知
  • 如何使用 vanilla JS 复制 useState

    Vanilla JS 中的代码的实现是什么 它允许我们像 React 中的 useState 那样声明和更新状态 const x setX useState 12 setX 14 console log x 14 这道题严格来说是get b
  • Android 1.5 多点触控

    有谁知道是否可以在 Android 1 5 设备上使用多点触控 我有一台 HTC Hero 它仍然运行 1 5 HTC 在推出 2 1 ROM 方面有点慢 Android MotionEvent 文档显示了常量 ACTION POINTER
  • android TextView:动态设置背景颜色不起作用

    以编程方式设置 Android 的背景颜色TextView似乎不起作用 我是不是漏掉了一些东西 TextView et new TextView activity et setText 350 et setBackgroundColor R
  • 使用 union 插入表变量

    我有一个表变量 我想插入联合查询 联合查询运行良好 但我似乎无法使插入工作 语法错误 INSERT INTO table a b c d VALUES SELECT a b c d FROM table1 UNION SELECT a b
  • C 中的“with”宏

    我一直在寻找一个类似于 with 结构的宏 用法应该是这样的 with lock x unlock x 它可能对其他一些目的有用 我想出了这个宏 define with onenter onexit v for int with uniq
  • Prometheus 来源的时间序列:如何将空值设置为零?

    使用 Docker Grafana 8 1 5 使用时间序列图 我正在绘制Prometheus Counter来源 有一个label as a time series 按标签 并且需要将所有空 缺失值填充为零 这是应用于的查询Prometh
  • 这个采用类型对象的函数如何在 TS 中键入?

    我有一个接受键对象的函数 每个值都有一个类型 这样为每一个其中一个字段的类型决定了另一个字段的类型 代码 We have this Alpha type and echo function type NoInfer
  • 查找数据框中所有站点共有的日期[重复]

    这个问题在这里已经有答案了 我正在处理一个大型数据集 我想找到所有网站通用的日期 site lt c 1 1 1 2 2 2 2 3 3 4 4 4 date lt c 4th Nov 5th Nov 6th Nov 5th Nov 6th
  • jQuery UI 自动完成 - 如何获取用户输入的值

    免责声明 我已经浏览了相关问题 但找不到该特定问题的解决方案 场景是这样的 根据用户是否从下拉列表中选择了建议或者是否没有匹配项 我想执行不同的 jQuery ajax 操作 我该怎么做呢 我卡住的地方是如何捕获当前在自动完成输入文本框中的
  • 根据 ObjectId 聚合和减少嵌套数组

    我有一个Event文档结构如下 我正在尝试查询employeeResponses用于收集单个员工的所有响应 可能存在也可能不存在 的数组 eventDate 2019 10 08T03 30 15 000 00 00 employeeRes
  • 使用 HTML5 doctype 时忽略 CSS 文件

    我有一个 HTML 页面 当调整浏览器窗口大小时 它使用 CSS 和 JavaScript 将页面内容置于浏览器中间 当我使用标准 HTML5 Doctype 声明时 所有浏览器完全忽略我的 CSS 文件 我不知道为什么 当我删除 HTML
  • 创建 React 应用程序 - 如何将 pdf.worker.js 文件从 pdfjs-dist/build 复制到项目的输出文件夹?

    由于我无法在要使用该应用程序的网络中使用浏览器的 pdf 查看器 因此我正在测试反应 pdf https www npmjs com package react pdf用于使用 React 加载 PDF 的包 我制作了一个组件 用于发送从后
  • 如何在 SQL Server 中查找运行跟踪?

    有没有一种简单的方法来确定已设置的痕迹sp trace create在 SQL Server 2000 上 SQL Server 2005 2008 2012 或 2014 怎么样 SQL Server 2005 向前 SELECT FRO
  • 我可以在 Composer 中存在循环依赖吗?

    我正在编写一个包 A 它是其他一些包 B 所需要的 而我现在还没有发布该包 B 在某些时候 A 将被更改为使用自身 B 很可能它们应该在同一个包中 但我更喜欢将这两件事分开 只是为了干净起见 更重要的是 因为 B 只是对 A 的开发依赖 p
  • 片段未显示

    我遇到一个问题 我可以创建一个片段 它的视图似乎已创建 但没有显示 片段本身已创建 内部的任何代码都可以正常运行 但它只是在某处不可见 后退按钮也可以很好地与它交互 它 关闭 它 它只是没有实际显示在屏幕上 仅显示主布局 来自我的 Frag
  • 禁用 iPhone 4S / 新 iPad 键盘上的听写按钮

    我们的应用程序是一个医疗保健应用程序 我们的应用程序中有一个符合 HIPAA 标准的语音识别器 所有听写都可以通过它进行 医院不希望医生意外开始与不符合 HIPAA 标准的 Nuance Dragon 服务器进行对话 因此 我正在寻找可以抑
  • 我可以在 NHibernate 中使用表值函数作为查询源吗?

    正如您可能已经猜到的 亲爱的社区 我有一个问题要问您 所以 我希望 NHibernate 根据表值 sql 函数的评估来过滤查询结果 NHibernate 生成的可能的 SQL 查询可能类似于以下内容 SELECT whatever FRO