You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
5.1 KiB
92 lines
5.1 KiB
\section{Παραδείγματα Ερωτημάτων}
|
|
|
|
\begin{enumerate}
|
|
|
|
\item
|
|
Όλα τα ονόματα των εστιατορίων τα οποία έχουν εγκριθεί και βρίσκονται κοντά σε μία περιοχή:
|
|
\begin{align*}
|
|
&\Pi_{\text{restaurant\_name}}(
|
|
\sigma_{\text{long\_dist} > -4 \wedge \text{long\_dist} < 4 \wedge \text{lat\_dist} > -4 \wedge \text{lat\_dist} < 4}( \\
|
|
&\Pi_{\text{restaurant\_name}, \text{given\_current\_longitude} - \text{restaurant\_longitude as long\_dis}, \text{given\_current\_latitude} - \text{restaurant\_latitude as lat\_dis}}( \\
|
|
&\sigma_{\text{restaurant\_is\_approved} = \text{TRUE}}
|
|
(\text{restaurant}))))
|
|
\end{align*}
|
|
|
|
\item
|
|
Όλα τα ονόματα εστιατορίων τα οποία δεν έχουν εγκριθεί ακόμα:
|
|
\begin{displaymath}
|
|
\Pi_{\text{restaurant\_name}}
|
|
(\sigma_{\text{restaurant\_is\_approved} = \text{FALSE}}(\text{restaurant}))
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Συστατικά που απαγορεύονται από τις δίαιτες που ακολουθεί ένας χρήστης καθώς και αυτά που έχει αποκλείσει μεμονωμένα:
|
|
\begin{align*}
|
|
Q3 \leftarrow &\sigma_{\text{user\_id} = \text{given\_id}}(\text{user\_follows\_diet})\triangleleft_{\theta}\text{diet}\triangleleft_{\theta}\text{diet\_prohibits\_ingredient}\triangleleft_{\theta}\text{ingredient} \cup \\
|
|
&\sigma_{\text{user\_id} = \text{given\_id}}(\text{user\_prohibits\_ingredient})\triangleleft_{\theta}\text{ingredient}
|
|
\end{align*}
|
|
|
|
\item
|
|
Πιάτα ενός εστιατορίου, εκτός αυτά που περιέχουν συστατικά τα οποία απαγορεύονται από τις δίαιτες που ακολουθεί ένας χρήστης ή τα έχει αποκλείσει μεμονωμένα. Για την ευκολότερη γραφή αυτού του ερωτήματος έγινε η ανάθεση του αποτελέσματος του προηγούμενου ερωτήματος στην προσωρινή μεταβλητή σχέσης Q3:
|
|
\begin{displaymath}
|
|
\sigma_{\text{restaurant\_id} = \text{given\_id}}(\text{food}) - (Q3\triangleleft_{\theta}\text{food\_has\_ingredient}\triangleleft_{\theta}\text{food})
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Ονόματα ποτών ενός καταστήματος:
|
|
\begin{displaymath}
|
|
\Pi_{\text{drink\_name}}
|
|
(\sigma_{\text{restaurant\_id} = \text{given\_id}}(\text{drink}))
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Ονόματα συστατικών ενός ποτού:
|
|
\begin{displaymath}
|
|
\Pi_{\text{ingredient\_name}}
|
|
(\sigma_{\text{drink\_id} = \text{given\_id}}(\text{drink\_has\_ingredient}) \bowtie \text{ingredient})
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Τα mails των χρηστών που έχουν αξιολογήσει ένα εστιατόριο:
|
|
\begin{displaymath}
|
|
\Pi_{user\_mail}
|
|
(\sigma_{\text{restaurant\_id} = \text{given\_id}}(\text{user\_rates\_restaurant}) \bowtie \text{user})
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Μέσος όρων αξιολογήσεων ενός ποτού ενός καταστήματος:
|
|
\begin{displaymath}
|
|
\mathcal{G}_{\text{avg(rating\_grade) as Average rating}}
|
|
(\sigma_{\text{drink\_id} = \text{given\_id}}(\text{user\_rates\_drink}))
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Μέσος όρος αξιολογήσεων ενός καταστήματος με κριτήριο τις δίαιτες ενός χρήστη, για κάθε δίαιτα ξεχωριστά:
|
|
\begin{align*}
|
|
_{\text{diet\_id}}\mathcal{G}_{\text{avg(rating\_grade) as Average rating}}
|
|
(&\sigma_{\text{restaurant\_id} = \text{given\_restaurant\_id}}(\text{user\_rates\_restaurant})
|
|
\triangleright_{\theta} \\
|
|
\Pi_{\text{diet\_id}}(&\sigma_{\text{user\_id} = \text{given\_user\_id}}(\text{user\_folows\_diet})))
|
|
\end{align*}
|
|
|
|
\item
|
|
Μέση βαθμολογία όλων των καταστημάτων μίας αλυσίδας, για κάθε κατάστημα ξεχωριστά:
|
|
\begin{align*}
|
|
&_{restaurant\_id}\mathcal{G}_{\text{avg(rating\_grade) as Average grade}}( \\
|
|
&\sigma_{\text{restaurant\_name} = \text{given\_franchise\_name}}(\text{restaurant})\bowtie\text{user\_rates\_restaurant})
|
|
\end{align*}
|
|
|
|
\item
|
|
Δικαιώματα ενός χρήστη:
|
|
\begin{displaymath}
|
|
\sigma_{\text{user\_id} = \text{given\_id}}(\text{user})\triangleleft_{\theta}\text{role\_has\_permission}\triangleleft_{\theta}\text{permission}
|
|
\end{displaymath}
|
|
|
|
\item
|
|
Ονόματα εστιατορίων που προσφέρουν φαγητά με θερμίδες λιγότερες από κάποιο συγκεκριμένο αριθμό:
|
|
\begin{displaymath}
|
|
\Pi_{\text{restaurant\_name}}
|
|
(\sigma_{\text{food\_calories} < \text{given\_number}}(\text{food}) \bowtie \text{restaurant})
|
|
\end{displaymath}
|
|
|
|
\end{enumerate}
|