generated from Arquisoft/wiq_0
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #58 from Arquisoft/lucia
Añado cambios de sacar datos de la Base de Datos
- Loading branch information
Showing
7 changed files
with
223 additions
and
120 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,158 @@ | ||
--CONSULTAS GEOGRAFIA -- | ||
--Consulta que devuelve pais y capital -- | ||
|
||
SELECT ?country ?countryLabel ?capitalLabel | ||
WHERE | ||
{ | ||
?country wdt:P31 wd:Q3624078. # Instance of country | ||
?country wdt:P36 ?capital. # Has capital | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | ||
|
||
|
||
--Consulta que devuelve pais y poblacion -- | ||
SELECT ?country ?countryLabel ?population | ||
WHERE | ||
{ | ||
?country wdt:P31 wd:Q3624078. # Instance of country | ||
?country wdt:P1082 ?population. # Has population | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | ||
|
||
--Consulta que devuelve pais, capital y poblacion -- | ||
SELECT ?country ?countryLabel ?capitalLabel ?population | ||
WHERE | ||
{ | ||
?country wdt:P31 wd:Q3624078. # Instance of country | ||
?country wdt:P36 ?capital. # Has capital | ||
?country wdt:P1082 ?population. # Has population | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | ||
|
||
--Consulta estado de EEUU y su capital -- | ||
SELECT ?state ?stateLabel ?capitalLabel | ||
WHERE { | ||
?state wdt:P31 wd:Q35657 . | ||
?state p:P36 ?statement . | ||
?statement ps:P36 ?capital . | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | ||
|
||
|
||
--Consulta estados de EEUU, capital y poblacion | ||
SELECT ?state ?stateLabel ?capitalLabel ?poblation | ||
WHERE { | ||
?state wdt:P31 wd:Q35657 . | ||
?state wdt:P36 ?capital . | ||
?state wdt:P1082 ?poblation . | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".} | ||
} | ||
|
||
|
||
--CONSULTAS DEPORTES-- | ||
--Consulta que devuelve club de futbol y su estadio -- | ||
|
||
SELECT ?club ?clubLabel ?stadiumLabel | ||
WHERE { | ||
?club wdt:P31 wd:Q17270000 . | ||
?club p:P115 ?statement . | ||
?statement ps:P115 ?stadium . | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | ||
} | ||
|
||
|
||
--CONSULTAS ARTE--- | ||
--Consulta libro y su autor -- | ||
SELECT ?book ?bookLabel ?authorLabel | ||
WHERE { | ||
?book wdt:P31 wd:Q571 . | ||
?book wdt:P50 ?author . | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".} | ||
} | ||
|
||
|
||
--Consulta que devuelve libre y su autor pero solo 4 resultados -- | ||
|
||
SELECT ?book ?bookLabel ?authorLabel | ||
WHERE { | ||
?book wdt:P31 wd:Q571 . | ||
?book wdt:P50 ?author . | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".} | ||
} | ||
LIMIT 4 | ||
|
||
--Consulta que me da peliculas su genero y año de publicacion del director Steven Spielberg -- | ||
|
||
SELECT ?film ?filmLabel ?genere ?d WHERE { | ||
{ | ||
SELECT ?film (GROUP_CONCAT(DISTINCT ?gL; SEPARATOR = ", ") AS ?genere) (MIN(YEAR(?date)) AS ?d) WHERE { | ||
?sitelink schema:about ?director; | ||
schema:isPartOf <https://en.wikipedia.org/>; | ||
schema:name "Steven Spielberg"@en. # Edit this with different director's name to see their films. Use the English Wikipedia title only. | ||
?film wdt:P31 wd:Q11424; | ||
wdt:P136 ?g, ?g. | ||
?g rdfs:label ?gL. | ||
?film wdt:P57 ?director; | ||
wdt:P577 ?date. | ||
FILTER((LANG(?gL)) = "en") | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } | ||
} | ||
GROUP BY ?film | ||
} | ||
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } | ||
} | ||
|
||
--CONSULTAS ENTRETENIMIENTO-- | ||
# Consulta para obtener videojuegos y sus plataformas de desarrollo | ||
SELECT ?videojuego ?nombreVideojuego ?plataforma ?nombrePlataforma | ||
WHERE { | ||
?videojuego wdt:P31 wd:Q7889. # Videojuegos (clase) | ||
?videojuego wdt:P178 ?plataforma. # Relación "desarrollado para" | ||
?videojuego rdfs:label ?nombreVideojuego filter (lang(?nombreVideojuego) = "es"). | ||
?plataforma rdfs:label ?nombrePlataforma filter (lang(?nombrePlataforma) = "es"). | ||
} | ||
LIMIT 100 | ||
|
||
|
||
# Consulta para obtener el nombre del videojuego y su género | ||
SELECT ?videojuego ?nombreVideojuego ?genero ?nombreGenero | ||
WHERE { | ||
?videojuego wdt:P31 wd:Q7889. # Videojuegos (clase) | ||
?videojuego wdt:P136 ?genero. # Relación "género" | ||
?videojuego rdfs:label ?nombreVideojuego filter (lang(?nombreVideojuego) = "es"). | ||
?genero rdfs:label ?nombreGenero filter (lang(?nombreGenero) = "es"). | ||
} | ||
LIMIT 100 | ||
|
||
|
||
--CONSULTAS CIENCIA-- | ||
|
||
--CONSULTAS HISTORIA-- | ||
|
||
|
||
--OTRAS CONSULTAS-- | ||
|
||
|
||
--Consulta que me devuelve por orden descendente y solo 4 resultados las ciudades mas grandes por pais | ||
me devuelve el nombre de la ciudad, pais y poblacion -- | ||
|
||
SELECT DISTINCT ?city ?cityLabel ?population ?countryLabel WHERE { | ||
{ | ||
SELECT (MAX(?population_) AS ?population) ?country WHERE { | ||
?city wdt:P31/wdt:P279* wd:Q515 . | ||
?city wdt:P1082 ?population_ . | ||
?city wdt:P17 ?country . | ||
} | ||
GROUP BY ?country | ||
ORDER BY DESC(?population) | ||
} | ||
?city wdt:P31/wdt:P279* wd:Q515 . | ||
?city wdt:P1082 ?population . | ||
?city wdt:P17 ?country . | ||
?city wdt:P625 ?loc . | ||
SERVICE wikibase:label { | ||
bd:serviceParam wikibase:language "en" . | ||
} | ||
} | ||
ORDER BY DESC(?population) | ||
LIMIT 4 |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
const mongoose = require('mongoose'); | ||
class ObtenerPreguntas{ | ||
|
||
obtenerPregunta(){ | ||
// Connect to MongoDB | ||
const mongoUri = process.env.MONGODB_URI || 'mongodb://localhost:27017/questionsdb'; | ||
mongoose.connect(mongoUri); | ||
|
||
var pregunta; | ||
var respuestaCorrecta; | ||
var respuestaIncorrecta1; | ||
var respuestaIncorrecta2; | ||
var respuestaIncorrecta3; | ||
|
||
Pregunta.aggregate([ | ||
{ $sample: { size: 1 } } | ||
]).then(pregunta => { | ||
var pregunta_id = pregunta._id; | ||
pregunta = pregunta.textoPregunta; | ||
Tipo.findOne({ _id: { $in: pregunta.pregunta_id } }).then(tipo => { | ||
console.log(tipo_id); | ||
respuestaCorrecta = pregunta.respuestaCorrecta; | ||
console.log(respuestaCorrecta); | ||
Respuesta.aggregate([ | ||
{ $match: { nombreTipo: tipo._id, texto: { $ne: [respuestaCorrecta, "Ninguna de las anteriores" ]} } }, | ||
{ $sample: { size: 3 } } | ||
|
||
]).then(respuestas => { | ||
console.log(respuestas); | ||
respuestaIncorrecta1 = respuestas[0].textoRespuesta; | ||
respuestaIncorrecta2 = respuestas[1].textoRespuesta; | ||
respuestaIncorrecta3 = respuestas[2].textoRespuesta; | ||
}).catch(err => { | ||
console.error(err); | ||
}); | ||
}) | ||
console.log(pregunta_id); | ||
|
||
}).catch(err => { | ||
console.error(err); | ||
}); | ||
|
||
return resultado = { | ||
pregunta: pregunta.textoPregunta, | ||
correcta: respuestaCorrecta, | ||
respuestasIncorrecta1: respuestaIncorrecta1, | ||
respuestasIncorrecta2: respuestaIncorrecta2, | ||
respuestasIncorrecta3: respuestaIncorrecta3 | ||
}; | ||
} | ||
} |