Relational Algebra
A procedural query language, relational algebra accepts instances of relations as input and returns instances of relations as output. It executes queries using operators. There are two types of operators: unary and binary. They take relations as inputs and produce relations as outputs. Recursive relational algebra is applied to a relation, and intermediate outcomes are also considered as relations.
The fundamental operations of relational algebra are as follows :
- Subject
- Project
- Union
- Set different
- Cartesian product
- Rename
Relational Calculus
Relational Calculus, as opposed to Relational Algebra, is a non-procedural query language, which means that it provides instructions but never explains how to execute them out.
Relational Calculus exists in two forms
- Tuple Relational Calculus (TRC)
- Domain Relational Calculus (DMC)
Difference between Relational Algebra and Relational Calculus
Sr. no. | key | Relational Algebra | Relational Calculus |
001 | Language type | Relational Algebra is procedural query language. | Relational Calculus is a non-procedural or declarative query language. |
002 | Objective | Relational Algebra focus on how to reach the desired outcome. | The goal of relational calculus is to determine the desired outcome. |
003 | Order | The sequence in which operations must be carried out is specified by relational algebra. | Relational calculus does not provide the sequence of action for its operations. |
004 | Dependency | Domain independency is a feature of relational algebra. | Relational Calculus may depend on a domain. |
005 | Programming Language | Relational Algebra and programming language principles are same. | Programing language and relational calculus are separated from each other. |