Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad
3
Obteniendo información,
relacionando tablas y utilizando
funciones y operadores en SQL
DESDE CERO CON MySQL | Unidad 3: Obteniendo información, relacionando tablas y utilizando funciones y operadores en SQL
Otra forma de traer información podrás hacerlo con anotación de punto, eliminando
el *(asterisco) y haciendo referencia a los atributos/columnas de la tabla que quere-
mos traer(año o título separado con coma).
Puede ser “puntual” o similar. Con * se traen todos los atributos de la tabla, si no se
puede aclarar columna por columna, como este ejemplo.
Recordá que afecta el orden de como muestra la información dependiendo qué atri-
buto ordenamos primero. Así sabemos a qué atributo pertenece. Esto nos permite
en bases muy grandes poder diferenciar las tablas
Aqui video práctico para la sentencia select:
4
https://www.youtube.com/watch?v=kxCptjkj1Ck&feature=youtu.be
• OR: el operador OR, muestra los registros cuando se cumple la primera condición Ó
la segunda.Es más permisivo
LIKE: es otra palabra clave que se utiliza en la cláusula WHERE. Básicamente, LIKE
permite hacer una búsqueda basada en un patrón en vez de especificar exactamente
lo que se desea (como en IN) o determinar un rango (como en BETWEEN).
El símbolo de porcentaje (%) significa que se acepta cualquier elemento en su lugar: un
carácter, cien caracteres o ningún carácter. Los comodines que utiliza para consultar
geodatabases personales son el asterisco (*) para cualquier número de caracteres y
el signo de pregunta (?) para un carácter.
IN: tiene dos usos de la palabra clave IN, y esta sección introduce aquél relacionado
con la cláusula WHERE. Cuando se lo utiliza en este contexto, sabemos exactamente
el valor de los valores regresados que deseamos ver para al menos una de las colum-
nas. El número de valores en los paréntesis pueden ser uno o más, con cada valor
separado por comas. Los valores pueden ser números o caracteres.
Todo lo que se explicó en referencia a los tipos de datos es válido para la instrucción
INSERT. Los datos de tipo numérico no se entrecomillan, a diferencia de los datos de
tipo cadena y fecha. Donde cada dato de la lista VALUES se corresponde y se asigna a
cada campo de la tabla en el mismo orden de aparición de la sentencia INSERT.
Los valores v1, v2, ..., vn se deben corresponder exactamente con las columnas que
hemos dicho que tendríamos con el CREATE TABLE y deben estar en el mismo orden,
a menos que las volvamos a poner a continuación del nombre de la tabla. En este úl-
timo caso, los valores se deben disponer de forma coherente con el nuevo orden que
hemos impuesto. Podría darse el caso de que quisiéramos que algunos valores para
insertar fuesen valores por omisión, definidos previamente con la opción DEFAULT.
Entonces pondremos la palabra reservada DEFAULT. Si se trata de introducir valores
nulos, también podemos utilizar la palabra reservada NULL.
Otra manera de realizarlo es con la sentencia SET. SET significa asignar información
y nos permite igual que la anterior sentencia agregar información.
UPDATE: permite actualizar registros de una tabla. Debemos por lo tanto indicar que
registros se quiere actualizar mediante la cláusula WHERE, y que campos mediante
la cláusula SET, además se deberá indicar que nuevo dato va a guardar cada campo.
Omitir la cláusula WHERE en una instrucción UPDATE implica aplicar la actualización
a todos los registros de la tabla.
Modo de actualización segura /Error 1175: IMPORTANTE MySQL por defecto genera
un MODO DE ACTUALIZACIÓN SEGURA en dichas tablas para arrojarnos este error.
Para corregir el ERROR en esta tabla vamos a generar una nueva pestaña CTRL +T
y colocamos
DELETE: permite eliminar registros de una tabla, su sintaxis es simple, puesto que
solo debemos indicar que registros deseamos eliminar mediante la cláusula WHERE.
Al eliminar registros de una tabla estos no deben figurar como clave foránea en otra
tabla, de lo contrario el SGBD devolverá un error de violación de integridad referen-
cial, puesto que si se permitiese quedarían regsitros huerfanos.
INNER Devuelve todas las filas cuando hay FROM Tabla1 [INNER]
JOIN al menos una coincidencia en ambas JOIN Tabla2 ON
tablas.Lo más usual, lo primero que Condiciones_Vinculos_
se suele aprender, es el uso de INNER Tablas
JOIN, o generalmente abreviado como
8
JOIN. Esta cláusula busca coincidencias
entre 2 tablas, en función a una columna
que tienen en común. De tal modo que
sólo la intersección se mostrará en los
resultados.
Devuelve todas las filas de la tabla de la SELECT OrderID,
izquierda, y las filas coincidentes de la C.CustomerID,
LEFT tabla de la derecha.A diferencia de un CompanyName,
JOIN INNER JOIN, donde se busca una inter- OrderDate FROM
sección respetada por ambas tablas, Customers C LEFT
con LEFT JOIN damos prioridad a la JOIN Orders O ON
tabla de la izquierda, y buscamos en la C.CustomerID =
tabla derecha. O.CustomerID
En el caso de RIGHT JOIN la situación SELECT OrderID,
es muy similar, pero aquí se da priori- C.CustomerID,
RIGHT dad a la tabla de la derecha.Devuelve CompanyName,
JOIN todas las filas de la tabla de la derecha, OrderDateFROM
y las filas coincidentes de la tabla de la Customers C RIGHT
izquierda. JOIN Orders O ON
C.CustomerID =
O.CustomerID
Mientras que LEFT JOIN muestra todas SELECT T1.Col1,
las filas de la tabla izquierda, y RIGHT T1.Col2, T1.Col3,
FULL JOIN muestra todas las correspondien- T2.Col7 FROM Tabla1
JOIN tes a la tabla derecha, FULL OUTER T1 FULL [OUTER] JOIN
JOIN (o simplemente FULL JOIN) se Tabla2 T2 ON T1.Col1 =
encarga de mostrar todas las filas de T2.Col1
ambas tablas, sin importar que no exis-
tan coincidencias (usará NULL como un
valor por defecto para dichos casos).
Devuelve todas las filas de las dos ta- FROM Tabla1 [LEFT/
blas, la izquierda y la derecha. También RIGHT/FULL] [OUTER]
OUTER se llama FULL OUTER JOIN.Nos devuel- JOIN Tabla2 ON
JOIN ve todos los registros cuando hay una Condiciones_Vinculos_
coincidencia en los registros de la tabla Tablas
izquierda (tabla1) o derecha (tabla2).
Puede devolver conjuntos de resultados
muy grandes.
DESDE CERO CON MySQL | Unidad 3: Obteniendo información, relacionando tablas y utilizando funciones y operadores en SQL
Video aquí
https://www.youtube.com/watch?v=m_zF9e0gaiA&feature=youtu.be
DESDE CERO CON MySQL | Unidad 3: Obteniendo información, relacionando tablas y utilizando funciones y operadores en SQL
FUNCIONES DE AGREGADO
MIN (Mínimo La función MIN () devuelve el valor más SELECT MIN(column_name) FROM
- El valor más pequeño de la columna seleccionada. table_name WHERE condition;
pequeño)
GROUP BY Combina los registros con valores idénti- Sentencia: SELECT campos FROM
cos, en la lista de campos especificados, tabla WHERE criterio GROUP BY
en un único registro. Para cada registro campos del grupo
se crea un valor sumario si se incluye
una función SQL agregada, como por
ejemplo Sum o Count, en la instrucción
SELECT. GROUP BY es opcional.
DESDE CERO CON MySQL | Unidad 3: Obteniendo información, relacionando tablas y utilizando funciones y operadores en SQL
Los valores de resumen se omiten si no existe una función SQL agregada en la ins-
trucción SELECT. Los valores Null en los campos GROUP BY se agrupan y no se
omiten. No obstante, los valores Null no se evalúan en ninguna de las funciones SQL
agregadas.
Se utiliza la cláusula WHERE para excluir aquellas filas que no desea agrupar, y la cláu-
sula HAVING para filtrar los registros una vez agrupados. Una vez que GROUP BY ha
combinado los registros, HAVING muestra cualquier registro agrupado por la cláusula 11
GROUP BY que satisfaga las condiciones de la cláusula HAVING.
HAVING: es similar a WHERE, determina qué registros se seleccionan. Una vez que
los registros se han agrupado utilizando GROUP BY, HAVING determina cuales de
ellos se van a mostrar.
IFNULL: si queremos cambiar un valor NULL por otro valor cualquiera, utilizaremos
las siguientes funciones (ISNULL, IFNULL, NVL, COLACESCE) según el sistema de
base de datos.Para nuestros ejemplos, queremos que si el valor es NULL se cambie
por el valor 0
FUNCIONES DE ESCALARES
De configuración Retornan información referida a la configuración.Ejemplo:select @@
version; Retorna la fecha, versión y tipo de procesador de SQL Server.
De cursores Retornan información sobre el estado de un cursor. 12
De fecha y hora Operan con valores “datetime” y ``smalldatetime”. Reciben un paráme-
tro de tipo fecha y hora y retornan un valor de cadena, numérico o de
fecha y hora.Esta sección describe las funciones que se pueden utilizar
para manipular valores temporales.
Matemáticas Realizan operaciones numéricas, geométricas y trigonométricas.
De metadatos Informan sobre las bases de datos y los objetos.
De seguridad Devuelven información referente a usuarios y funciones.
Del sistema Informan sobre opciones, objetos y configuraciones del sistema. Ejem-
plo:select user_name();
Estadísticas del sistema Retornan información referente al rendimiento del sistema.
Texto e imagen Realizan operaciones con valor de entrada de tipo text o image y retor-
nan información referente al mismo.
De cadena Mediante las funciones de cadena, puede, por ejemplo, combinar datos,
extraer una subcadena, comparar cadenas o convertir una cadena a
todos los caracteres en mayúscula o minúscula. Estas funciones se
dividen en dos grupos: Funciones que devuelven caracteres y las que
devuelven valores numéricos.
DESDE CERO CON MySQL | Unidad 3: Obteniendo información, relacionando tablas y utilizando funciones y operadores en SQL
15
@puntodigitalAR
/puntodigitalAR
/programapuntodigital
puntodigital.gob.ar