[TASK] Generic commit.

This commit is contained in:
Jan Philipp Timme 2016-10-03 19:44:50 +02:00
parent 3d217cf4c8
commit 57316512bf

View File

@ -829,21 +829,21 @@ Dieses Muster verbietet die Vorkommnis von Ereignistyp B lediglich dann, wenn er
\end{itemize}
\paragraph{Aggregation von Ereignissen}
\dots
Ergeben sich für Ereignismuster über ein Sliding Window eine größere Menge an Ergebnissen, so kann es sinnvoll sein, diese Anhand von bestimmten Kriterien in einzelne Gruppen zusammenzufassen und mittels Aggregationsfunktionen diese Gruppen zusammenzufassen. Um dies zu tun, gibt es in C-SPARQL das Konstrukt \texttt{GROUP BY (\emph{?var})}, wobei \texttt{?var} eine Variable aus der \texttt{WHERE}-Klausel ist, nach der gruppiert werden soll.
\begin{lstlisting}
SELECT ..., (COUNT(?foo) AS ?zielVariable)
...
WHERE { ... }
AGGREGATE {
(?zielVariable, COUNT, { ?groupByVariableA, ?groupByVariableB } )
FILTER ( ?zielVariable > 5 )
}
\end{lstlisting}\cite{barbieri:csparql}
GROUP BY ?groupByVariableA, groupByVariableB
HAVING COUNT(?foo) > 5
\end{lstlisting}\cite{barbieri:querying}
Mögliche Aggregationsfunktionen laut \cite{barbieri:csparql} sind:
\begin{itemize}
\item COUNT
\item SUM
\item AVG
\item MIN
\item MAX
\item \texttt{COUNT()}
\item \texttt{SUM()}
\item \texttt{AVG()}
\item \texttt{MIN()}
\item \texttt{MAX()}
\end{itemize}