<div class="page"> <div class="cover text-center"> <img class="mx-auto" src=/itb/images/logo_mislata.png alt="logo"> # Solució Consultes Municipis <div class="text-end fit-content ms-auto my-3 mt-auto pt-3"> <p><strong>Autor:</strong> Joan Puigcerver Ibáñez</p> <p><strong>Correu electrònic:</strong> j.puigcerveribanez@edu.gva.es</p> <p><strong>Curs:</strong> 2023/2024</p> </div> <div> <p class="fw-bold mb-0">Llicència: BY-NC-SA</p> <p class="d-none d-md-block">(Reconeixement - No Comercial - Compartir Igual)</p> <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.ca" target="_blank"> <img class="mx-auto" src="/itb/images/license.png" alt="Licence"/> </a> </div><!--license--> </div><!--cover--> </div><!--page--> {:toc} ## Base de dades La base de dades `municipis` conté les següents col·leccions: - `municipis`: Conté la informació dels municipis. __Fitxers:__ - <a href="/DAM-BD/files/ca/municipis/mongodb/municipis.json" download="municipis.json">municipis.json</a> ::: example "Estructura d'un municipi ```mongodb [ { _id: ObjectId('663a2f6d638ab1b329ca86f7'), comunitat: 'Comunitat Valenciana', provincia: 'València', poblacio: 'Mislata', localitzacio: [ 39.47624, -0.419307 ], altitud: 33.95, habitants: 43756, homens: 21475, dones: 22281, zip: [ '46920' ] } ] ``` ::: ## Consultes 1. Consulta la informació del municipis que incloguen el nom __Castelló__. ```mongodb [ { poblacio: "Castelló d'empúries" }, { poblacio: 'Castelló de farfanya' }, { poblacio: 'Castelló de la plana' }, { poblacio: 'Castelló de rugat' }, { poblacio: 'Castelló (de la Ribera)' } ] ``` ??? solution ```mongodb db.municipis.find({poblacio: /castelló/i}, {_id: 0, poblacio: 1}) ``` ??? 2. Compta el nombre de municipis que pertanyen a la província de __València__. ```mongodb 266 ``` ??? solution ```mongodb db.municipis.find({provincia: 'València'}).count() ``` ??? 3. Mostra la informació dels municipis que tenen una altitud superior a 1500 metres. Ordenals de major a menor altitud. ```mongodb [ { poblacio: 'Aisa', altitud: 1818.995 }, { poblacio: 'Valdelinares', altitud: 1699.088 }, { poblacio: 'Pedroso', altitud: 1699.063 }, { poblacio: 'Griegos', altitud: 1601.854 } ] ``` ??? solution ```mongodb db.municipis.find({altitud: {$gt: 1500}}, {_id: 0, poblacio: 1, altitud: 1}).sort({altitud: -1}) ``` ??? 4. Mostra la informació dels municipis que tenen un nom amb més de 40 lletres. ```mongodb [ { provincia: 'Burgos', poblacio: 'Villarcayo de merindad de castilla la vieja' }, { provincia: 'Girona', poblacio: "Cruïlles. monells i sant sadurní de l'heura" }, { provincia: 'Madrid', poblacio: 'Gargantilla del lozoya y pinilla de buitrago' } ] ``` ??? solution ```mongodb db.municipis.find({$where: "this.poblacio.length > 40"}, {_id: 0, poblacio: 1}) ``` ??? 5. Mostra la informació del municipi més al nord de l'estat espanyol. ```mongodb [ { poblacio: 'Mañón', localitzacio: [ 43.7692, -7.685581 ] } ] ``` ??? solution ```mongodb db.municipis.find({}, {_id: 0, poblacio: 1, localitzacio: 1}).sort({'localitzacio.0': -1}).limit(1) ``` ??? 6. Obté els municipis que no tenen codi postal i que el nombre d'habitants siga major de 100000 ordenats alfabèticament. ```mongodb [ { poblacio: 'Alacant' }, { poblacio: 'Alcobendas' }, { poblacio: 'Castelló de la plana' }, { poblacio: 'Coruña, a' }, { poblacio: 'Elx' }, { poblacio: "Hospitalet de llobregat, l'" }, { poblacio: 'Iruña' }, { poblacio: 'Palma' }, { poblacio: 'Palmas de gran canaria, las' }, { poblacio: 'San cristóbal de la laguna' }, { poblacio: 'Santa coloma de gramenet' } ] ``` ??? solution ```mongodb db.municipis.find({zip: {$exists: false}, habitants: {$gt: 1000}}, {_id: 0, poblacio: 1}).sort({poblacio: 1}) ``` ???