Что такое Projection, с точки зрения теории базы данных и NHibernate при использовании SetProjection()?
Что такое проекция?
Ответ 1
Очень просто, это функция, которая принимает вход (например, строку базы данных) и производит вывод (например, один из столбцов из строки или, возможно, некоторый расчет на основе нескольких столбцов).
Ответ 2
Проецирование является одной из основных операций реляционной алгебры. Он принимает отношение и (возможно, пустой) список атрибутов этого отношения в качестве входных данных. Он выводит отношение, содержащее только указанный список атрибутов с удаленными кортежами. Другими словами, выход должен также быть отношением.
Например, если отношение R {A, B} содержит три набора {1,10}, {2,10}, {3,20}, то проекция R над списком атрибутов {B} будет содержать 2 кортежи: {10}, {20}.
Короче говоря, проекция более или менее эквивалентна SELECT DISTINCT в SQL (исключая случаи с нулями и повторяющимися столбцами).
Ответ 3
Проецирование означает подмножество столбцов в запросе.
select x, y, z from YourTable
x, y, z здесь проекция.
Ответ 4
В терминах спящего режима это похоже на то, какие столбцы выбрать. В отличие от того, чтобы сопоставления определяли, какие столбцы извлекаются. Это означает, что вы можете указать sql-функции, подзапросы, один столбец или, возможно, все вышеперечисленное с помощью ProjectionList. Например, если вы хотите подсчитать строки в таблице SetProjection(Projections.RowCount())
.
Ответ 5
Если вы знакомы с таблицами SQL или базы данных: Проецирование относится к числу возвращаемых полей/столбцов/атрибутов. Выбор относится к количеству строк/записей для возврата. Есть хорошие объяснения видео здесь и здесь
Ответ 6
Это также проекция вызова, пожалуйста, проверьте диаграмму
Проецирование реагирует на события в системе
Проект прост прослушиватель.