46

在使用 SetProjection() 时,就数据库理论和 NHibernate 而言,什么是投影?

4

6 回答 6

47

投影是关系代数的基本运算之一。它需要一个关系和该关系的一个(可能为空的)属性列表作为输入。它输出的关系仅包含指定的属性列表,并删除了重复的元组。换句话说,输出也必须是一个关系。

例如,如果关系 R{A,B} 包含三个元组 {1,10},{2,10},{3,20},则 R 在属性列表 {B} 上的投影将包含 2 个元组:{ 10},{20}。

简而言之,投影或多或少等同于 SQL 中的 SELECT DISTINCT(不包括空值和重复列的情况)。

于 2010-08-11T19:48:12.567 回答
34

非常简单,它是一个函数,它接受输入(例如数据库行)并产生输出(例如行中的一列,或者可能基于多列的一些计算)。

于 2010-08-11T17:28:15.140 回答
17

投影是指查询中列的子集。

select x, y, z from YourTable 

x, y, z 是这里的投影。

于 2015-02-13T13:19:56.777 回答
2

就休眠而言,它就像指定要选择的列。与让映射决定获取哪些列相反。这意味着您可以通过 ProjectionList 指定 sql 函数、子查询、单个列或以上所有内容。例如,如果您想计算表中的行数SetProjection(Projections.RowCount())

于 2010-08-11T19:59:57.920 回答
2

如果您熟悉 SQL 或数据库表:投影是指要返回的字段/列/属性的数量。选择处理要返回的行数/记录数。这里这里都有很好的视频解释

于 2015-07-04T19:35:11.220 回答
-2

也叫投影

也叫投影,请看图

投影对系统中的事件做出反应

项目是简单的监听器。

于 2017-12-14T02:14:47.960 回答