*.ipynb: Use absolute URLs to link to the glossary
[swc-sql.git] / 07-join.ipynb
index 93761c51a1821a27219ee179f622e1642408ff25..ef816e96d89f0b6ed85af7fbac708e912aaa06da 100644 (file)
      "metadata": {},
      "source": [
       "`join` creates\n",
-      "the [cross product](../../gloss.html#cross-product)\n",
+      "the [cross product](https://github.com/swcarpentry/bc/blob/master/gloss.md#cross-product)\n",
       "of two tables,\n",
       "i.e.,\n",
       "it joins each record of one with each record of the other\n",
       "We can tell which records from `Site`, `Visited`, and `Survey`\n",
       "correspond with each other\n",
       "because those tables contain\n",
-      "[primary keys](../../gloss.html#primary-key)\n",
-      "and [foreign keys](../../gloss.html#foreign-key).\n",
+      "[primary keys](https://github.com/swcarpentry/bc/blob/master/gloss.md#primary-key)\n",
+      "and [foreign keys](https://github.com/swcarpentry/bc/blob/master/gloss.md#foreign-key).\n",
       "A primary key is a value,\n",
       "or combination of values,\n",
       "that uniquely identifies each record in a table.\n",
       "Now that we have seen how joins work,\n",
       "we can see why the relational model is so useful\n",
       "and how best to use it.\n",
-      "The first rule is that every value should be [atomic](../../gloss.html#atomic-value),\n",
+      "The first rule is that every value should be [atomic](https://github.com/swcarpentry/bc/blob/master/gloss.md#atomic-value),\n",
       "i.e.,\n",
       "not contain parts that we might want to work with separately.\n",
       "We store personal and family names in separate columns instead of putting the entire name in one column\n",