Develop a translator which shall translate a given select statement of SQL into an equivalent expression in relational algebra. Your translator must include SELECTION, PROJECTION, JOIN and SET operation.
Note: no subqueries
SELECT A, B
FROM r
WHERE A > 100
SELECT *
FROM r
WHERE A > 100
sigma_{A>100}(r)
SELECT *
FROM r JOIN s
WHERE A > 100
SELECT A
FROM r
INTERSECT
SELECT A
FROM s
lexical analysic
| SQL operation | relational algebra |
|---|---|
| SELECTION | |
| PROJECTION | |
| UNION | |
| INTERSECTION | |
| SET DIFFERENCE | |
| LEFT JOIN | |
| RIGHT JOIN | |
| FULL OUTER JOIN | |
| INNER JOIN |
S
S0
R