Skip to content

Commit c5fe34c

Browse files
committed
Update paths
1 parent 58a242f commit c5fe34c

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

docs/src/query/operators.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[Data queries](../query-objs) make use of operators to derive the desired table. They
44
represent the desired data symbolically, but do not contain any data. Once a query is
5-
formed, we can [fetch](../common-commands#fetch) the data into the local workspace. Since
5+
formed, we can [fetch](./common-commands#fetch) the data into the local workspace. Since
66
the expressions are only symbolic, repeated `fetch` calls may yield different results as
77
the state of the database is modified.
88

@@ -50,7 +50,7 @@ In order for these operators to be applied to tables, they must also be
5050
<span id="join-compatible">**join-compatible**</span>, which means that:
5151

5252
1. All fields in both tables must be part of either the
53-
[primary key](../../../glossary#primary-key) or a [foreign key](../../../glossary#foreign-key).
53+
[primary key](../concepts/glossary#primary-key) or a [foreign key](../concepts/glossary#foreign-key).
5454

5555
2. All common fields must be of a compatible datatype for equality comparisons.
5656

@@ -65,23 +65,23 @@ In order for these operators to be applied to tables, they must also be
6565

6666
The Join operator `A * B` combines the matching information in `A` and `B`. The result
6767
contains all matching combinations of entities from both arguments, including all
68-
unique [primary keys](../../../glossary#primary-key) from both arguments.
68+
unique [primary keys](../concepts/glossary#primary-key) from both arguments.
6969

7070
In the example below, we look at the union of (A) a table pairing sessions with users
7171
and (B) a table pairing sessions with scan.
7272

7373
<figure markdown>
74-
![Join example](../../../images/concepts-operators-join1.png){: style="height:200px"}
74+
![Join example](../images/concepts-operators-join1.png){: style="height:200px"}
7575
</figure>
7676

7777
This has all the primary keys of both tables (a union thereof, shown in bold) as well as
78-
all [secondary attributes](../../../glossary#seconday-attribute) (i.e., user and
78+
all [secondary attributes](../concepts/glossary#seconday-attribute) (i.e., user and
7979
duration). This also excludes the session for which we don't have a scan.
8080

8181
We can also join based on secondary attributes, as shown in the example below.
8282

8383
<figure markdown>
84-
![Join example](../../../images/concepts-operators-join2.png){: style="height:200px"}
84+
![Join example](../images/concepts-operators-join2.png){: style="height:200px"}
8585
</figure>
8686

8787
??? notes "Additional join properties"
@@ -131,7 +131,7 @@ The `proj` operator represents **projection** and is used to select attributes
131131
(columns) from a table, to rename them, or to create new calculated attributes.
132132

133133
1. A simple projection *selects a subset of attributes* of the original
134-
table, which may not include the [primary key](../../../glossary#primary-key).
134+
table, which may not include the [primary key](../concepts/glossary#primary-key).
135135

136136
2. A more complex projection *renames an attribute* in another table. This could be
137137
useful when one table should be referenced multiple times in another. A user table,
@@ -156,8 +156,8 @@ and others.
156156

157157
The result of the union operator `A + B` contains all the entities from both operands.
158158

159-
[Entity normalization](../normalization) requires that `A` and `B` are of the same type,
160-
with with the same [primary key](../../../glossary#primary-key), using homologous
159+
[Entity normalization](../design/normalization) requires that `A` and `B` are of the same type,
160+
with with the same [primary key](../concepts/glossary#primary-key), using homologous
161161
attributes. Without secondary attributes, the result is the simple set union. With
162162
secondary attributes, they must have the same names and datatypes. The two operands
163163
must also be **disjoint**, without any duplicate primary key values across both inputs.
@@ -214,7 +214,7 @@ Universal sets should be used sparingly when no suitable base tables already exi
214214
some cases, defining a new base table can make queries clearer and more semantically
215215
constrained.
216216

217-
The examples below will use the table definitions in [table tiers](../../reproduce/table-tiers).
217+
The examples below will use the table definitions in [table tiers](../reproduce/table-tiers).
218218

219219
<!-- ## Join appears here in the general docs -->
220220

@@ -224,7 +224,7 @@ The examples below will use the table definitions in [table tiers](../../reprodu
224224

225225
### By a mapping
226226

227-
For a [Session table](../../reproduce/table-tiers#manual-tables), that has the attribute
227+
For a [Session table](../reproduce/table-tiers#manual-tables), that has the attribute
228228
`session_date`, we can restrict to sessions from January 1st, 2022:
229229

230230
```python

0 commit comments

Comments
 (0)