El cálculo relacional es un lenguaje de consulta que describe la respuesta deseada sobre una base de datos sin especificar cómo obtenerla, a diferencia del álgebra relacional que es de tipo procedimental, el cálculo relacional es de tipo declarativo; pero siempre ambos métodos logran los mismos resultados.
Podemos distinguir, por lo menos, dos Clases de Cálculo Relacional:
Una consulta en TRC es de la forma:
donde T es una variable tipo tupla y φ(T) es una fórmula que describe a T. El resultado de esta consulta es el conjunto de todas las tuplas t para las cuales la fórmula es verdadera.
Una variable tipo tupla T es una variable capaz de tomar cualquier valor tupla que pertenece a una relación (o tabla).
La sintaxis es definida a partir de la lógica de primer orden. Donde la variable a utilizar son de tipo tupla. Una variable es libre en una fórmula (o subfórmula) si la (sub) fórmula no contiene ninguna ocurrencia de cuantificadores que la limiten. En una consulta en TRC de la forma: {T | φ(T )}, T es la única variable libre.
Está constituido con los mismos operadores que el cálculo relacional de tuplas pero no hay tuplas sino variables dominio. Las expresiones del cálculo relacional de dominios son de la forma { (x, y, z, ...) / P(x, y, z, ...) }, donde x, y, z representan las variables de dominio, P representa una fórmula compuesta de átomos (igual que en el CRT). Los átomos del cálculo relacional de dominios tienen una de las siguientes formas:
Conjunto de posibles valores que puede tomar en la relación.