Skip to content

Commit a9f6e5d

Browse files
committed
Pequeños cambios.
1 parent 296731f commit a9f6e5d

File tree

1 file changed

+5
-40
lines changed

1 file changed

+5
-40
lines changed

mongo/sesion3.ipynb

Lines changed: 5 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1001,7 +1001,7 @@
10011001
"id": "dkaF-MXPXK4_"
10021002
},
10031003
"source": [
1004-
"_Lookup_!"
1004+
"_Lookup_!: (Equivalente a un JOIN en SQL)"
10051005
]
10061006
},
10071007
{
@@ -1032,44 +1032,7 @@
10321032
"id": "UoBeNpgdXK5D"
10331033
},
10341034
"source": [
1035-
"El `$lookup` genera un _array_ con todos los resultados. El operador `$arrayElementAt` accede al primer elemento."
1036-
]
1037-
},
1038-
{
1039-
"cell_type": "code",
1040-
"execution_count": null,
1041-
"metadata": {
1042-
"id": "Kbg5QWiaXK5D"
1043-
},
1044-
"outputs": [],
1045-
"source": [
1046-
"respuestas = db.posts.aggregate( [\n",
1047-
" {'$match': { 'Score' : {'$gte': 40}}},\n",
1048-
" {'$lookup': {\n",
1049-
" 'from': \"users\",\n",
1050-
" 'localField': \"OwnerUserId\",\n",
1051-
" 'foreignField': \"Id\",\n",
1052-
" 'as': \"owner\"}\n",
1053-
" },\n",
1054-
" { '$project' :\n",
1055-
" {\n",
1056-
" 'Id' : True,\n",
1057-
" 'Score' : True,\n",
1058-
" 'username' : {'$arrayElemAt' : ['$owner.DisplayName', 0]},\n",
1059-
" 'owner.DisplayName' : True\n",
1060-
" }},\n",
1061-
" {'$limit': 20}\n",
1062-
" ])\n",
1063-
"list(respuestas)"
1064-
]
1065-
},
1066-
{
1067-
"cell_type": "markdown",
1068-
"metadata": {
1069-
"id": "5fJwA3gMXK5F"
1070-
},
1071-
"source": [
1072-
"`$unwind` también puede usarse. \"Desdobla\" cada fila por cada elemento del array. En este caso, como sabemos que el array sólo contiene un elemento, sólo habrá una fila por fila original, pero sin el _array_. Finalmente se puede proyectar el campo que se quiera."
1035+
"El `$lookup` genera un _array_ con todos los resultados. `$unwind` puede usarse para \"desdoblar\" cada fila por cada elemento del array. En este caso, como sabemos que el array sólo contiene un elemento, sólo habrá una fila por fila original, pero sin el _array_. Finalmente se puede proyectar el campo que se quiera.\n"
10731036
]
10741037
},
10751038
{
@@ -1088,15 +1051,17 @@
10881051
" 'foreignField': \"Id\",\n",
10891052
" 'as': \"owner\"}\n",
10901053
" },\n",
1054+
"\n",
10911055
" { '$unwind': '$owner'},\n",
1056+
"\n",
10921057
" { '$project' :\n",
10931058
" {\n",
10941059
" 'Id' : True,\n",
10951060
" 'Score': True,\n",
10961061
" 'username': '$owner.DisplayName'\n",
10971062
" }\n",
10981063
" },\n",
1099-
" { '$limit' : 20 }\n",
1064+
" { '$limit' : 2 }\n",
11001065
" ])\n",
11011066
"list(respuestas)"
11021067
]

0 commit comments

Comments
 (0)