{"id":2346,"date":"2024-03-21T10:51:41","date_gmt":"2024-03-21T16:51:41","guid":{"rendered":"https:\/\/tecsify.com\/blog\/?p=2346"},"modified":"2024-03-21T10:55:43","modified_gmt":"2024-03-21T16:55:43","slug":"sql-basico","status":"publish","type":"post","link":"https:\/\/tecsify.com\/blog\/sql-basico\/","title":{"rendered":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos"},"content":{"rendered":"\n<p>El lenguaje de consulta estructurado o SQL (por sus siglas en ingl\u00e9s <strong>Structured Query Language<\/strong>) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas, en esta ocasi\u00f3n te explicaremos que es SQL y cuales son sus concepto y comandos  b\u00e1sicos.<\/p>\n\n\n\n<p>Podemos decir que SQL se trata de un lenguaje universal empleado en cualquier sistema gestor de bases de datos relacional, cuenta con un est\u00e1ndar definido a partir del cual cada sistema gestor ha desarrollado una versi\u00f3n propia, adem\u00e1s, una de sus caracter\u00edsticas es el manejo del \u00e1lgebra y el c\u00e1lculo relacional que permiten efectuar consultas con el fin de recuperar de forma sencilla informaci\u00f3n de inter\u00e9s de bases de datos, as\u00ed como hacer cambios en ella.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/encrypted-tbn0.gstatic.com\/images?q=tbn:ANd9GcScEYmVPsElYbZLkXnuSkL1W0rgH6ldZfnNLg&amp;usqp=CAU\" alt=\"Database &amp; SQL Fundamentals: MS SQL Server Basics \u2013 SQL and PL\/SQL -  INNOVEX ACADEMY\" style=\"width:525px;height:177px\"\/><figcaption class=\"wp-element-caption\">SQL fue originalmente basado en el \u00e1lgebra relacional y en el c\u00e1lculo relacional<\/figcaption><\/figure>\n<\/div>\n\n\n<p><strong>Tambi\u00e9n puede interesarte: <a href=\"https:\/\/tecsify.com\/blog\/codigos-http\/\">Que son los c\u00f3digos de estado HTTP y cu\u00e1l es su significado<\/a><\/strong><\/p>\n\n\n\n<p>Primeramente clasifiquemos las instrucciones SQL seg\u00fan su prop\u00f3sito:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Existen tres tipos de comandos SQL:<\/h2>\n\n\n\n<p>Los <strong>DLL(Data Definition Language)<\/strong> que permiten crear y definir nuevas bases de datos, campos e \u00edndices. Los <strong>DML(Data Manipulation Language)<\/strong> que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. Los <strong>DCL(Data Control Language)<\/strong> que se encargan de definir las permisos sobre los datos<\/p>\n\n\n\n<p>Ahora que ya sabebmos los tipos de comandos, veamos las sentencias.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"780f\">Sentencias en SQL:<\/h2>\n\n\n\n<p id=\"5e59\">Estas tienen la caracter\u00edstica de que todas deben seguir unos simples patrones:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Se empiezan por un verbo indicando la acci\u00f3n a realizar.<\/li>\n\n\n\n<li>Contin\u00faan completando con un <em>objeto<\/em> sobre el cual se realiza la acci\u00f3n.<\/li>\n\n\n\n<li>Se sigue por una serie de cl\u00e1usulas, obligatorias y opcionales, que especifican a detalle lo que se quiere hacer.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Lenguaje de definici\u00f3n de datos (DDL):<\/h2>\n\n\n\n<p>El lenguaje de definici\u00f3n de datos (en ingl\u00e9s Data Definition Language, o DDL), es el que se encarga de la modificaci\u00f3n de la estructura de los objetos de la base de datos. Incluye \u00f3rdenes para modificar, borrar o definir las tablas en las que se almacenan los datos de la base de datos. Existen cuatro operaciones b\u00e1sicas: CREATE, ALTER, DROP y TRUNCATE.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>CREATE (Crear):<\/strong> <\/h3>\n\n\n\n<p>Este comando crea un objeto dentro del gestor de base de datos. Puede ser una base de datos, tabla, \u00edndice, procedimiento almacenado o vista<\/p>\n\n\n\n<p>La siguiente sentencia nos permite crear una base de datos llamada Frutas, que es nuestro objeto en concreto y luego especificar detalles (opcional):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">CREATE DATABASE Vehiculos;<\/code><\/pre>\n\n\n\n<p id=\"45ec\">Tambi\u00e9n podemos usar <strong>CREATE <\/strong>para crear una tabla, en este caso, la tabla <strong>Carros <\/strong>bajo los mismos criterios pero agregando la definici\u00f3n de las columnas de la Tabla en los par\u00e9ntesis, en este caso creando 3 columnas con distintos tipos de datos:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">CREATE TABLE Carros(\nid INT,\nplaca VARCHAR(30),\nactivo BOOLEAN\n);<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"f48f\">DROP (Eliminar):<\/h3>\n\n\n\n<p>Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, \u00edndice, trigger, funci\u00f3n, procedimiento o cualquier otro objeto que el motor de la base de datos soporte. Se puede combinar con la sentencia ALTER.<\/p>\n\n\n\n<p id=\"c761\">Estas dos sentencias siguientes permiten borrar la BD o la tabla sin necesidad de m\u00e1s especificaciones:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">DROP DATABASE Vehiculos;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">DROP TABLE Carros;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"9000\">ALTER (Modificar):<\/h3>\n\n\n\n<p>Este comando permite modificar la estructura de un objeto. Se pueden agregar\/quitar campos a una tabla, modificar el tipo de un campo, agregar\/quitar \u00edndices a una tabla, modificar un trigger, etc.<\/p>\n\n\n\n<p id=\"3120\">La siguiente sentencia nos permitir\u00e1 modificar la definici\u00f3n de la tabla que especifiquemos, en este caso modificamos la tabla para agregar la columna ciudad de tipo varchar:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">ALTER TABLE Carros ADD color varchar(30);<\/code><\/pre>\n\n\n\n<p id=\"2f5f\">Mientras que en esta sentencia podemos modificar la tabla para que la columna seleccionada pase a ser otro tipo de dato.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">ALTER TABLE Carros ALTER COLUMN color int;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"929d\">TRUNCATE:<\/h3>\n\n\n\n<p>Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho m\u00e1s r\u00e1pido, especialmente si la tabla es muy grande. La desventaja es que TRUNCATE s\u00f3lo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no se permite la cl\u00e1usula WHERE. Si bien, en un principio, esta sentencia parecer\u00eda ser DML (Lenguaje de Manipulaci\u00f3n de Datos), es en realidad una DDL, ya que internamente, el comando TRUNCATE borra la tabla y la vuelve a crear y no ejecuta ninguna transacci\u00f3n.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">TRUNCATE TABLE Carros;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Lenguaje de manipulaci\u00f3n de datos DML(Data Manipulation Language)<a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#lenguaje-de-manipulacion-de-datos-dml-data-manipulation-language\"><\/a>:<\/h2>\n\n\n\n<p>Un lenguaje de manipulaci\u00f3n de datos (Data Manipulation Language, o DML en ingl\u00e9s) es un lenguaje proporcionado por el sistema de gesti\u00f3n de base de datos que permite a los usuarios llevar a cabo las tareas de consulta o manipulaci\u00f3n de los datos, organizados por el modelo de datos adecuado. El lenguaje de manipulaci\u00f3n de datos m\u00e1s popular hoy d\u00eda es SQL, usado para recuperar y manipular datos en una base de datos relacional.<\/p>\n\n\n\n<p>En el <strong>DML<\/strong> tenemos los siguientes verbos para utilizar sobre los datos almacenados en sentencias:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>INSERT<\/strong> (Insertar una nueva fila de datos):<\/h3>\n\n\n\n<p>Una sentencia INSERT de SQL agrega uno o m\u00e1s registros a una (y s\u00f3lo una) tabla en una base de datos relacional.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">INSERT INTO Carros (id, placa, activo) VALUES (323, 'P015416985', TRUE);<\/code><\/pre>\n\n\n\n<p>Si al insertar datos a una tabla estas seguro que vas a utilizar todas las columnas, no es necesario especificarlas y puedes escribir la sentencia ingresando los valores directamente, sin embargo, se debe tener cuidado de poner los valores en el orden de las columnas para que esto funcione.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">DELETE (Eliminar filas de datos):<\/h3>\n\n\n\n<p>Una sentencia DELETE de SQL borra uno o m\u00e1s registros existentes en una tabla.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">DELETE FROM Carros WHERE placa='P015416985';<\/code><\/pre>\n\n\n\n<p>Se debe tener cuidado con esta sentencia, el WHERE nos indica qu\u00e9 registro o registros se van a eliminar, si la olvidamos, eliminaremos todos los registros de la tabla. En el caso de este ejemplo se est\u00e1 eliminando el registro del empleado que hab\u00edamos insertado anteriormente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">UPDATE (Modificar filas de datos):<\/h3>\n\n\n\n<p>Una sentencia UPDATE de SQL es utilizada para modificar los valores de un conjunto de registros existentes en una tabla.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">UPDATE Carros SET activo=FALSE WHERE placa='P015416985';<\/code><\/pre>\n\n\n\n<p>Debemos tener el mismo cuidado y utilizar WHERE para especificar el registro que queremos modificar como con DELETE.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">SELECT (Seleccionar, obtener):<\/h3>\n\n\n\n<p>Las consultas de selecci\u00f3n se utilizan para indicar al motor de datos que devuelva informaci\u00f3n de las bases de datos, esta informaci\u00f3n es devuelta en forma de conjunto de registros. Este conjunto de registros es modificable.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT id, placa, activo from Carros WHERE placa='P015416985';<\/code><\/pre>\n\n\n\n<p>En este caso utilizamos el SELECT para seleccionar los datos mencionados de nuestra tabla Carros (con la cl\u00e1usula FROM) pero solo en el caso en que la placa sea igual a la brindada en la cl\u00e1usula WHERE<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"91c6\">Tipos de Datos:<\/h2>\n\n\n\n<p id=\"79ad\">Las columnas, variables, expresiones y par\u00e1metros en SQL est\u00e1n asociados a un tipo de dato. El tipo de dato nos indica el conjunto de valores v\u00e1lidos para los campos definidos de ese tipo. Es decir, nos indica si los valores aceptado se tratan de caracteres, n\u00fameros enteros, n\u00fameros no exactos, valores monetarios(moneda), de fecha y hora, solo de fecha, entre muchos otros.<\/p>\n\n\n\n<p id=\"177c\">Los tipos de datos regularmente son organizados en las siguientes categor\u00edas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Num\u00e9ricos exactos.<\/li>\n\n\n\n<li>Cadenas de caracteres Unicode.<\/li>\n\n\n\n<li>Valores num\u00e9ricos aproximados.<\/li>\n\n\n\n<li>Cadenas binarias.<\/li>\n\n\n\n<li>Fecha y hora.<\/li>\n\n\n\n<li>Otros tipos de datos.<\/li>\n<\/ul>\n\n\n\n<p id=\"7a6a\">Cada tipo de dato puede ser usado en una o muchas situaciones as\u00ed que seleccionar el adecuado depender\u00e1 del desarrollador encargado, por lo regular algunos de los m\u00e1s utilizados son varchar, int y datetime pero no podemos descartar la posibilidad de que alg\u00fan otro sea mejor seg\u00fan cada caso particular.<br>A continuaci\u00f3n les dejo un enlace a la documentaci\u00f3n de Microsoft al respecto en donde pueden encontrar una tabla con todos los tipos de datos y una explicaci\u00f3n a detalle de cada uno, as\u00ed no los agobio poni\u00e9ndolo todo aqu\u00ed.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Operadores de comparaci\u00f3n<a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#operadores-de-comparacion\"><\/a>:<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Operador<\/strong><\/td><td><strong>Uso<\/strong><\/td><\/tr><tr><\/tr><tr><td>&lt;<\/td><td>Menor que<\/td><\/tr><tr><\/tr><tr><td>&gt;<\/td><td>Mayor que<\/td><\/tr><tr><\/tr><tr><td>&lt;&gt;<\/td><td>Distinto de<\/td><\/tr><tr><\/tr><tr><td>&lt;=<\/td><td>Menor o igual que<\/td><\/tr><tr><\/tr><tr><td>&gt;=<\/td><td>Mayor o igual que<\/td><\/tr><tr><\/tr><tr><td>BETWEEN<\/td><td>Intervalo<\/td><\/tr><tr><\/tr><tr><td>LIKE<\/td><td>Comparaci\u00f3n<\/td><\/tr><tr><\/tr><tr><td>In<\/td><td>Especificar<\/td><\/tr><tr><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Operadores L\u00f3gicos:<\/h2>\n\n\n\n<p>Los operadores l\u00f3gicos soportados por SQL son:<strong>AND, OR, XOR, Eqv, Imp, Is<\/strong> y <strong>Not.<\/strong><\/p>\n\n\n\n<p>A excepci\u00f3n de los dos \u00faltimos todos poseen la siguiente sintaxis:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">&lt;expresi\u00f3n1&gt; operador &lt;expresi\u00f3n2&gt;<\/code><\/pre>\n\n\n\n<p>En donde expresi\u00f3n1 y expresi\u00f3n2 son las condiciones a evaluar, el resultado de la operaci\u00f3n var\u00eda en funci\u00f3n del operador l\u00f3gico:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT * FROM Empleados WHERE Edad &gt; 25 AND Edad &lt; 50;\nSELECT * FROM Empleados WHERE (Edad &gt; 25 AND Edad &lt; 50) OR Sueldo = 100;\nSELECT * FROM Empleados WHERE NOT Estado = 'Soltero';\nSELECT * FROM Empleados WHERE (Sueldo &gt; 100 AND Sueldo &lt; 500) OR (Provincia = 'Madrid' AND Estado = 'Casado');<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Operador <strong>BETWEEN<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#operador-between\"><\/a><\/h4>\n\n\n\n<p>Para indicar que deseamos recuperar los registros seg\u00fan el intervalo de valores de un campo emplearemos el operador <strong>Between<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT * FROM Pedidos WHERE CodPostal Between 28000 And 28999;\n(Devuelve los pedidos realizados en la provincia de Madrid)\n\nSELECT IIf(CodPostal Between 28000 And 28999, 'Provincial', 'Nacional') FROM Editores;\n(Devuelve el valor 'Provincial' si el c\u00f3digo postal se encuentra en el intervalo,'Nacional' en caso contrario)<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Operador <strong>LIKE<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#operador-like\"><\/a><\/h4>\n\n\n\n<p>Se utiliza para comparar una expresi\u00f3n de cadena con un modelo en una expresi\u00f3n SQL. Su sintaxis es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">expresi\u00f3n LIKE modelo<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Operador <strong>IN<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#operador-in\"><\/a><\/h4>\n\n\n\n<p>Este operador devuelve aquellos registros cuyo campo indicado coincide con alguno de los indicados en una lista. Su sintaxis es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT * FROM Pedidos WHERE Provincia In ('Madrid', 'Barcelona', 'Sevilla');<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Clausula <strong>WHERE<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#clausula-where\"><\/a><\/h4>\n\n\n\n<p>La cl\u00e1usula WHERE puede usarse para determinar qu\u00e9 registros de las tablas enumeradas en la cl\u00e1usula FROM aparecer\u00e1n en los resultados de la instrucci\u00f3n SELECT. WHERE es opcional, pero cuando aparece debe ir a continuaci\u00f3n de FROM:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT Apellidos, Salario FROM Empleados WHERE Salario &gt; 21000;\n\nSELECT Id_Producto, Existencias FROM Productos WHERE Existencias &lt;= Nuevo_Pedido;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Agrupamiento de registros (Agregaci\u00f3n)<a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#agrupamiento-de-registros-agregacion\"><\/a><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>AVG<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#avg\"><\/a><\/h4>\n\n\n\n<p>Calcula la media aritm\u00e9tica de un conjunto de valores contenidos en un campo especificado de una consulta:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">Avg(expr)<\/code><\/pre>\n\n\n\n<p>La funci\u00f3n Avg no incluye ning\u00fan campo Null en el c\u00e1lculo. Un ejemplo del funcionamiento de <strong>AVG<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT Avg(Gastos) AS Promedio FROM Pedidos WHERE Gastos &gt; 100;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>MAX, MIN<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#max-min\"><\/a><\/h4>\n\n\n\n<p>Devuelven el m\u00ednimo o el m\u00e1ximo de un conjunto de valores contenidos en un campo especifico de una consulta. Su sintaxis es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">Min(expr)\nMax(expr)<\/code><\/pre>\n\n\n\n<p>Un ejemplo de su uso:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT Min(Gastos) AS ElMin FROM Pedidos WHERE Pais = 'Guatemala';\n\nSELECT Max(Gastos) AS ElMax FROM Pedidos WHERE Pais = 'Costa Rica';<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>SUM<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#sum\"><\/a><\/h4>\n\n\n\n<p>Devuelve la suma del conjunto de valores contenido en un campo especifico de una consulta. Su sintaxis es:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">Sum(expr)Sum(expr)<\/code><\/pre>\n\n\n\n<p>Por ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT Sum(PrecioUnidad * Cantidad) AS Total FROM DetallePedido;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>GROUP BY<\/strong><a href=\"https:\/\/geotalleres.readthedocs.io\/es\/latest\/conceptos-sql\/conceptos_sql.html#group-by\"><\/a><\/h4>\n\n\n\n<p>Combina los registros con valores id\u00e9nticos, en la lista de campos especificados, en un \u00fanico registro:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT campos FROM tabla WHERE criterio GROUP BY campos del grupo<\/code><\/pre>\n\n\n\n<p>Todos los campos de la lista de campos de SELECT deben o bien incluirse en la cl\u00e1usula GROUP BY o como argumentos de una funci\u00f3n SQL agregada:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"sql\" class=\"language-sql line-numbers\">SELECT Id_Familia, Sum(Stock) FROM Productos GROUP BY Id_Familia;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p>\u00bfQuieres practicar tu SQL con ejercicios? Puedes hacerlo en W3Schools: <a href=\"https:\/\/www.w3schools.com\/SQl\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.w3schools.com\/SQl\/<\/a><\/p>\n\n\n\n<p>\u00a1Tambi\u00e9n puedes ver la infograf\u00eda que hicimos para este articulo!<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-1024x1024.png\" alt=\"Que es SQL basico por Tecsify\" class=\"wp-image-2808\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-1024x1024.png 1024w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-300x300.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-150x150.png 150w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-768x768.png 768w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-450x450.png 450w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21-780x780.png 780w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/03\/Group-21.png 1100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Comandos de SQL<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>\u00a1Eso es todo por hoy! \u00bfQu\u00e9 te pareci\u00f3 esta gu\u00eda? \u00a1Cu\u00e9ntanos en los comentarios!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>El lenguaje de consulta estructurado o SQL (Structured Query Language) es un lenguaje de bases de datos relacionales<\/p>\n","protected":false},"author":2,"featured_media":2347,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[108,86,3,2],"tags":[109,111,114,113,41,89,8,110,29,71],"class_list":{"0":"post-2346","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-base-de-datos","8":"category-guias-y-tutoriales","9":"category-programacion","10":"category-tech","11":"tag-base-de-datos","12":"tag-basico","13":"tag-db","14":"tag-dba","15":"tag-gratis","16":"tag-guia","17":"tag-programacion","18":"tag-sql","19":"tag-tecsify","20":"tag-tutorial"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog<\/title>\n<meta name=\"description\" content=\"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tecsify.com\/blog\/sql-basico\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog\" \/>\n<meta property=\"og:description\" content=\"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tecsify.com\/blog\/sql-basico\/\" \/>\n<meta property=\"og:site_name\" content=\"Tecsify Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Tecsify\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-21T16:51:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T16:55:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"773\" \/>\n\t<meta property=\"og:image:height\" content=\"522\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Oscar Morales Cuellar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ozk404\" \/>\n<meta name=\"twitter:site\" content=\"@tecsify\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oscar Morales Cuellar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/\"},\"author\":{\"name\":\"Oscar Morales Cuellar\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/person\\\/cba7ef409f8a0add564d28611b4b3b5a\"},\"headline\":\"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos\",\"datePublished\":\"2024-03-21T16:51:41+00:00\",\"dateModified\":\"2024-03-21T16:55:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/\"},\"wordCount\":1707,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/sqlbasico.jpg\",\"keywords\":[\"Base de Datos\",\"Basico\",\"DB\",\"DBA\",\"Gratis\",\"Guia\",\"Programacion\",\"SQL\",\"Tecsify\",\"Tutorial\"],\"articleSection\":[\"Base de Datos\",\"Gu\u00edas y Tutoriales\",\"Programaci\u00f3n y Desarrollo de Software\",\"Tecnolog\u00eda e innovaci\u00f3n\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/\",\"name\":\"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/sqlbasico.jpg\",\"datePublished\":\"2024-03-21T16:51:41+00:00\",\"dateModified\":\"2024-03-21T16:55:43+00:00\",\"description\":\"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/sqlbasico.jpg\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/sqlbasico.jpg\",\"width\":773,\"height\":522,\"caption\":\"SQL B\u00e1sico\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/sql-basico\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\",\"name\":\"Tecsify Blog\",\"description\":\"Tecnolog\u00eda, IA y Desarrollo de Software\",\"publisher\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\"},\"alternateName\":\"Tecsify Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\",\"name\":\"Tecsify\",\"alternateName\":\"Tecsify Blog\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/bluenew.png\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/bluenew.png\",\"width\":830,\"height\":443,\"caption\":\"Tecsify\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Tecsify\",\"https:\\\/\\\/x.com\\\/tecsify\",\"https:\\\/\\\/www.instagram.com\\\/tecsify\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCalG-fWPHHWG-XTzhcCn0_A\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/tecsify\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/person\\\/cba7ef409f8a0add564d28611b4b3b5a\",\"name\":\"Oscar Morales Cuellar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"caption\":\"Oscar Morales Cuellar\"},\"description\":\"Oscar Morales Cuellar es un ingeniero en software, estratega tecnol\u00f3gico y emprendedor social, conocido principalmente por ser el fundador y CEO de Tecsify Latinoam\u00e9rica. Su trabajo ha sido reconocido internacional, incluyendo el World Summit Award (WSA) respaldado por la ONU, ITU, Huawei, su inclusi\u00f3n en la lista \\\"30 Under 30\\\" de Forbes, Personaje del a\u00f1o 2025 en innovaci\u00f3n y diversos galardones m\u00e1s.\",\"sameAs\":[\"https:\\\/\\\/oscarmoralesgt.com\",\"https:\\\/\\\/instagram.com\\\/ozk404\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ozk404\\\/\",\"https:\\\/\\\/x.com\\\/ozk404\"],\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/author\\\/ozk404\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog","description":"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tecsify.com\/blog\/sql-basico\/","og_locale":"es_ES","og_type":"article","og_title":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog","og_description":"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos","og_url":"https:\/\/tecsify.com\/blog\/sql-basico\/","og_site_name":"Tecsify Blog","article_publisher":"https:\/\/www.facebook.com\/Tecsify","article_published_time":"2024-03-21T16:51:41+00:00","article_modified_time":"2024-03-21T16:55:43+00:00","og_image":[{"width":773,"height":522,"url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg","type":"image\/jpeg"}],"author":"Oscar Morales Cuellar","twitter_card":"summary_large_image","twitter_creator":"@ozk404","twitter_site":"@tecsify","twitter_misc":{"Written by":"Oscar Morales Cuellar","Est. reading time":"8 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#article","isPartOf":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/"},"author":{"name":"Oscar Morales Cuellar","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/person\/cba7ef409f8a0add564d28611b4b3b5a"},"headline":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos","datePublished":"2024-03-21T16:51:41+00:00","dateModified":"2024-03-21T16:55:43+00:00","mainEntityOfPage":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/"},"wordCount":1707,"commentCount":1,"publisher":{"@id":"https:\/\/tecsify.com\/blog\/#organization"},"image":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#primaryimage"},"thumbnailUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg","keywords":["Base de Datos","Basico","DB","DBA","Gratis","Guia","Programacion","SQL","Tecsify","Tutorial"],"articleSection":["Base de Datos","Gu\u00edas y Tutoriales","Programaci\u00f3n y Desarrollo de Software","Tecnolog\u00eda e innovaci\u00f3n"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/tecsify.com\/blog\/sql-basico\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/tecsify.com\/blog\/sql-basico\/","url":"https:\/\/tecsify.com\/blog\/sql-basico\/","name":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos | Tecsify Blog","isPartOf":{"@id":"https:\/\/tecsify.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#primaryimage"},"image":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#primaryimage"},"thumbnailUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg","datePublished":"2024-03-21T16:51:41+00:00","dateModified":"2024-03-21T16:55:43+00:00","description":"SQL (Structured Query Language) es un lenguaje declarativo de bases de datos relacionales, aqui te mostramos sus comandos y conceptos b\u00e1sicos","breadcrumb":{"@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tecsify.com\/blog\/sql-basico\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#primaryimage","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2022\/06\/sqlbasico.jpg","width":773,"height":522,"caption":"SQL B\u00e1sico"},{"@type":"BreadcrumbList","@id":"https:\/\/tecsify.com\/blog\/sql-basico\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/tecsify.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Qu\u00e9 es SQL y cu\u00e1les son sus comandos b\u00e1sicos"}]},{"@type":"WebSite","@id":"https:\/\/tecsify.com\/blog\/#website","url":"https:\/\/tecsify.com\/blog\/","name":"Tecsify Blog","description":"Tecnolog\u00eda, IA y Desarrollo de Software","publisher":{"@id":"https:\/\/tecsify.com\/blog\/#organization"},"alternateName":"Tecsify Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tecsify.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/tecsify.com\/blog\/#organization","name":"Tecsify","alternateName":"Tecsify Blog","url":"https:\/\/tecsify.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/bluenew.png","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/bluenew.png","width":830,"height":443,"caption":"Tecsify"},"image":{"@id":"https:\/\/tecsify.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Tecsify","https:\/\/x.com\/tecsify","https:\/\/www.instagram.com\/tecsify","https:\/\/www.youtube.com\/channel\/UCalG-fWPHHWG-XTzhcCn0_A\/","https:\/\/www.linkedin.com\/company\/tecsify\/"]},{"@type":"Person","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/person\/cba7ef409f8a0add564d28611b4b3b5a","name":"Oscar Morales Cuellar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","caption":"Oscar Morales Cuellar"},"description":"Oscar Morales Cuellar es un ingeniero en software, estratega tecnol\u00f3gico y emprendedor social, conocido principalmente por ser el fundador y CEO de Tecsify Latinoam\u00e9rica. Su trabajo ha sido reconocido internacional, incluyendo el World Summit Award (WSA) respaldado por la ONU, ITU, Huawei, su inclusi\u00f3n en la lista \"30 Under 30\" de Forbes, Personaje del a\u00f1o 2025 en innovaci\u00f3n y diversos galardones m\u00e1s.","sameAs":["https:\/\/oscarmoralesgt.com","https:\/\/instagram.com\/ozk404","https:\/\/www.linkedin.com\/in\/ozk404\/","https:\/\/x.com\/ozk404"],"url":"https:\/\/tecsify.com\/blog\/author\/ozk404\/"}]}},"_links":{"self":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/2346","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/comments?post=2346"}],"version-history":[{"count":15,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/2346\/revisions"}],"predecessor-version":[{"id":2812,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/2346\/revisions\/2812"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/media\/2347"}],"wp:attachment":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/media?parent=2346"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/categories?post=2346"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/tags?post=2346"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}