{"id":316,"date":"2023-09-03T17:22:06","date_gmt":"2023-09-03T15:22:06","guid":{"rendered":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/?page_id=316"},"modified":"2025-03-09T15:01:14","modified_gmt":"2025-03-09T13:01:14","slug":"1-9-consultas-avanzadas-agrupaciones","status":"publish","type":"page","link":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/1-9-consultas-avanzadas-agrupaciones\/","title":{"rendered":"1.9. Consultas avanzadas: agrupaciones"},"content":{"rendered":"<p>Mediante el desglose de datos de una tabla, en funci\u00f3n de alg\u00fan campo concreto, podemos calcular estad\u00edsticas sobre cada categor\u00eda. El comando <code>GROUP BY<\/code> permite realizar agrupaciones de los datos de las tablas seg\u00fan los criterios que establezcamos, y es posible combinar estas clasificaciones con operadores de agregaci\u00f3n como <strong><code>COUNT<\/code><\/strong><strong><code>,<\/code><\/strong><strong><code> MAX<\/code><\/strong><strong><code>,<\/code><\/strong><strong><code> MIN<\/code><\/strong><strong><code>,<\/code><\/strong><strong><code> AVG<\/code><\/strong><strong><code> o <\/code><\/strong><strong><code>SUM<\/code><\/strong><strong>.<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">SELECT campo1, campo2,..., campon FROM tabla GROUP BY atribut;<\/pre>\n<p>Por ejemplo, solicitamos las especies presentes en nuestra base de datos:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"mowtwo\">mysql&gt; SELECT especie FROM genes GROUP BY especie;\r\n\r\n+-----------------+\r\n| especie         |\r\n+-----------------+\r\n| D. melanogaster |\r\n| H. sapiens      |\r\n+-----------------+\r\n2 rows in set (0.00 sec)<\/pre>\n<p>Posteriormente, podemos contar el n\u00famero exacto de ejemplos de cada especie:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"mowtwo\">mysql&gt; SELECT especie,COUNT(*) FROM genes GROUP BY especie;\r\n\r\n+-----------------+----------+\r\n| especie         | COUNT(*) |\r\n+-----------------+----------+\r\n| D. melanogaster |       2  |\r\n| H. sapiens      |       2  |\r\n+-----------------+----------+\r\n2 rows in set (0.00 sec)<\/pre>\n<p>Ahora obtenemos las estad\u00edsticas b\u00e1sicas sobre la longitud de los genes:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"mowtwo\">mysql&gt; SELECT especie, cromosoma, inicio, final, final-inicio\r\n    -&gt; FROM genes;\r\n\r\n+-----------------+-----------+-----------+-----------+--------------+\r\n| especie         | cromosoma |   inicio  |   final   | final-inicio |\r\n+-----------------+-----------+-----------+-----------+--------------+\r\n| D. melanogaster | chr3R     |  20477248 |  20479098 |         1850 |\r\n| D. melanogaster | chr2L     |    476437 |    479046 |         2609 |\r\n| H. sapiens      | chr12     | 121416548 | 121440312 |        23764 |\r\n| H. sapiens      | chr8      | 128748314 | 128753678 |         5364 |\r\n+-----------------+-----------+-----------+-----------+--------------+\r\n4 rows in set (0.00 sec)\r\n\r\nmysql&gt; SELECT especie, AVG(final-inicio), MIN(final-inicio),\r\n    -&gt; MAX(final-inicio) FROM genes GROUP BY especie;\r\n\r\n+-----------------+-------------------+-------------------+-------------------+\r\n| especie         | AVG(final-inicio) | MIN(final-inicio) | MAX(final-inicio) |\r\n+-----------------+-------------------+-------------------+-------------------+\r\n| D. melanogaster |         2229.5000 |              1850 |              2609 |\r\n| H. sapiens      |        14564.0000 |              5364 |             23764 |\r\n+-----------------+-------------------+-------------------+-------------------+\r\n2 rows in set (0.00 sec)<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Mediante el desglose de datos de una tabla, en funci\u00f3n de alg\u00fan campo concreto, podemos calcular estad\u00edsticas sobre cada categor\u00eda. El comando GROUP BY permite realizar agrupaciones de los datos de las tablas seg\u00fan los criterios que establezcamos, y es posible combinar estas clasificaciones con operadores de agregaci\u00f3n como COUNT, MAX, MIN, AVG o SUM. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"acf":[],"_links":{"self":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/pages\/316"}],"collection":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/comments?post=316"}],"version-history":[{"count":5,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/pages\/316\/revisions"}],"predecessor-version":[{"id":1011,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/pages\/316\/revisions\/1011"}],"wp:attachment":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/gestion-de-datos\/es\/wp-json\/wp\/v2\/media?parent=316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}