0% encontró este documento útil (0 votos)
15 vistas28 páginas

Tutorial SQL

El documento detalla los comandos DML (Lenguaje de Manipulación de Datos) en SQL, que permiten crear, actualizar y manipular datos en bases de datos. Incluye instrucciones como SELECT, INSERT, UPDATE y DELETE, así como funciones agregadas y cláusulas para filtrar y ordenar resultados. También se abordan conceptos avanzados como UNION, subconsultas y operaciones de combinación de tablas.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
15 vistas28 páginas

Tutorial SQL

El documento detalla los comandos DML (Lenguaje de Manipulación de Datos) en SQL, que permiten crear, actualizar y manipular datos en bases de datos. Incluye instrucciones como SELECT, INSERT, UPDATE y DELETE, así como funciones agregadas y cláusulas para filtrar y ordenar resultados. También se abordan conceptos avanzados como UNION, subconsultas y operaciones de combinación de tablas.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

SQL

STRUCTURED QUERY LANGUAGE


RESUMEN COMANDOS DML
El Lenguaje de Consulta Estructurado (SQL) está conformado por comandos,
cláusulas, operadores y funciones agregadas. Estos elementos se combinan en
las instrucciones para crear, actualizar y manipular los datos.

Existen dos tipos de comandos:

Comandos DDL (Lenguaje de Definición de Datos) que permiten crear y definir


nuevas bases de datos, campos e índices.

Comandos DML (Lenguaje de Manipulación de Datos) que permiten generar


consultas para extraer datos de la Base de Datos.

Este documento resume los comandos DML.

1. COMANDOS DML (Data Manipulation Language-Lenguaje de


Manipulación de Datos)

1.1. SELECT
Consulta registros de la Base de Datos según un criterio determinado

SELECT "nombre_columna" FROM "nombre_tabla"

Ejemplos:

TABLA: estudiantes

Figura 1 - Tabla Estudiantes


1.2. DISTINCT
Omite los registros cuyos campos seleccionados coincidan totalmente.

SELECT DISTINCT "nombre_columna"


FROM "nombre_tabla"

Ejemplo: Seleccionar los distintos tipo de identificación en la tabla estudiantes


de la figura 1.

Ejemplo: Seleccionar los distintos sexos en la tabla estudiantes de la figura 1.


1.3. WHERE
Especifica las condiciones que deben reunir los registros que se van a
seleccionar

SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "condición"

Ejemplo: Seleccionar los estudiantes de la tabla estudiantes de la figura 1 que


tengan cédula como identificación

1.4. AND - OR

SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "condición simple"
{[AND|OR] "condición simple"}+

Ejemplo: De la tabla productos de la figura 2

Figura 2 - Tabla productos


1.5. IN

SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "nombre_columna" IN (''valor1', ''valor2', ...)

Ejemplo: De la tabla productos de la figura 2

1.6. BETWEEN

SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "nombre_columna" BETWEEN 'valor1' AND 'valor2'

Ejemplo: De la tabla productos de la figura 2


1.7. LIKE

SELECT "nombre_columna"
FROM "nombre_tabla"
WHERE "nombre_columna" LIKE {patrón}

{patrón} generalmente consiste en comodines. Aquí hay algunos ejemplos:


 'A_Z': Toda línea que comience con 'A', otro carácter y termine con
'Z'. Porejemplo, 'ABZ' y 'A2Z' deberían satisfacer la condición, mientras
'AKKZ' no debería (debido a que hay dos caracteres entre A y Z en vez de
uno).
 'ABC%': Todas las líneas que comienzan con 'ABC'. Por ejemplo, 'ABCD' y
'ABCABC' ambas deberían satisfacer la condición.
 '%XYZ': Todas las líneas que terminan con 'XYZ'. Por ejemplo, 'WXYZ' y
'ZZXYZ' ambas deberían satisfacer la condición.
 '%AN%': : Todas las líneas que contienen el patrón 'AN' en cualquier lado.
Por ejemplo, 'LOS ANGELES' y 'SAN FRANCISCO' ambos deberían
satisfacer la condición

Ejemplo: De la tabla productos de la figura 2.

Seleccionar los productos cuyo nombre tenga como segunda letra la E

Seleccionar los productos cuyo nombre termine en la letra A


1.8. ORDER BY

SELECT "nombre_columna"
FROM "nombre_tabla"
[WHERE "condición"]
ORDER BY "nombre_columna" [ASC, DESC]

Ejemplo: De la tabla productos de la figura 2.


1.9. FUNCIÓN AVG:
Calcula la media aritmética de un conjunto de valores contenidos en un
campo especificado de una consulta

SELECT AVG("nombre_columna")
FROM "nombre_tabla

Ejemplo: De la tabla productos de la figura 2.

1.10. FUNCIÓN MAX (MÁXIMO)

SELECT MAX("nombre_columna")
FROM "nombre_tabla

Ejemplo: De la tabla productos de la figura 2.


1.11. FUNCIÓN MIN (MÍNIMO)

SELECT MIN("nombre_columna")
FROM "nombre_tabla

Ejemplo: De la tabla productos de la figura 2.

1.12. FUNCIÓN SUM (SUMA)

SELECT SUM("nombre_columna")
FROM "nombre_tabla

Ejemplo: De la tabla productos de la figura 2.

1.13. FUNCIÓN COUNT (CUENTA NÚMERO DE FILAS)

SELECT
COUNT("nombre_columna")
FROM "nombre_columna"

Ejemplo: De la tabla productos de la figura 2.


1.14. GROUP BY:
Combina los registros en la lista de campos especificados, en un único registro.
Para cada registro se crea un valor total si se incluye una función SQL
agregada, como por ejemplo Sum o Count, en la instrucción SELECT

SELECT "nombre1_columna", SUM("nombre2_columna")


FROM "nombre_tabla"
GROUP BY "nombre1-columna"

Ejemplo: De la tabla productos de la figura 2.

1.15. 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.
SELECT "nombre1_columna", SUM("nombre2_columna")
FROM "nombre_tabla"
GROUP BY "nombre1_columna"
HAVING (condición de función aritmética)

Ejemplo: De la tabla productos de la figura 2.

1.16. ALIAS
Alias se puede utilizar para cambiar el nombre de tablas y columnas.
SELECT "alias_tabla"."nombre1_columna" "alias_columna"
FROM "nombre_tabla" "alias_tabla"

Ejemplo: De la tabla productos de la figura 2.


1.17. JOIN
Se puede utilizar una operación INNER JOIN en cualquier cláusula FROM.
Esto crea una combinación por equivalencia, conocida también como unión
interna. Las combinaciones equivalentes son las más comunes; éstas
combinan los registros de dos tablas siempre que haya concordancia de
valores en un campo común a ambas tablas.

Ejemplo: Con las tablas de la figura 3

Figura 3 - productos - lineas


Sin inner join

Con inner join

Figura 4 - Estudiantes-Cursos-EstCurso
Sin inner join

Con inner join

1.18. LEFT JOIN


Toma todos los registros de la tabla de la izquierda aunque no tengan ningún
registro en la tabla de la derecha

Ejemplo: Con las tablas de la figura 3

1.19. RIGHT JOIN


Toma todos los registros de la tabla de la derecha aunque no tenga ningún
registro en la tabla de la izquierda.

Ejemplo: Con las tablas de la figura 3


1.20. CONCAT
Concatena los resultados de varios campos diferentes.

CONCAT(cad1, cad2, cad3, ...):

Ejemplo: De la tabla productos de la figura 1

1.21. SUBSTRING

SUBSTR(str,pos): Selecciona todos los caracteres de <str> comenzando con


posición <pos>.

Ejemplo: Con las tablas de la figura 2


SUBSTR(str,pos,len): Comienza con el carácter <pos> en la cadena <str> y
selecciona los siguientes caracteres <len>.

1.22. TRIM
La función TRIM en SQL se utiliza para eliminar un prefijo o sufijo determinado
de una cadena. El patrón más común a eliminarse son los espacios en blanco

TRIM(str)

Ejemplo:

1.23. LTRIM
Elimina todos los espacios en blanco del comienzo de la cadena

LTRIM(str)

Ejemplo
1.24. RTRIM
Elimina todos los espacios en blanco del final de la cadena.

RTRIM(str)
Ejemplo

1.25. INSERT INTO


Comando para insertar nuevos datos a las tablas ya existentes

INSERT INTO "nombre_tabla" ("columna1", "columna2", ...)


VALUES ("valor1", "valor2", ...)

Ejemplo: con las tablas de la figura 4:

INSERT INTO tbl_name [(col_name,...)]


SELECT ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]

Inserta datos en una tabla a partir de una consulta

ON DUPLICATE KEY UPDATE evita que se inserten valores duplicados. Si


especifica ON DUPLICATE KEY UPDATE, y se inserta un registro que
duplicaría un valor en un índice UNIQUE o PRIMARY KEY, se realiza
un UPDATE del antiguo registro.

Ejemplo:

Tabla Líneas1:

Tabla Lineas

Insertar los datos de la tabla Lineas en Lineas1:

1.26. UPDATE
Comando para modificar datos de las tablas

UPDATE "nombre_tabla"
SET "columna_1" = [nuevo valor]
WHERE {condición}
Ejemplo:

Ejemplo: de la tabla de la figura 2 (Productos)

aumentar un 20% al precio de los productos de la línea 1


Tabla lineas

1.27. DELETE FROM


Comando para borrar datos de las tablas
DELETE FROM "nombre_tabla"
WHERE {condición}

Ejemplo: De la tabla de la figura 2, borrar los productos de línea 3


2. SQL AVANZADO

2.1. UNION
Se usa para combinar los resultados de varias sentencias en un único conjunto
de resultados

SELECT …
UNION [ALL | DISTINCT]
SELECT
UNION [ALL | DISTINCT]

Las columnas seleccionadas listadas en las posiciones correspondientes para


cada sentencia deben ser del mismo tipo. En los resultados devueltos se
usarán los nombres de columna usados en la primera sentencia.
Si usa UNION, por defecto asume UNION DISTINCT, es decir elimina registros
repetidos en la salida.

Ejemplo: En la tabla de la figura 2


2.2. UNION ALL
Si especifica UNION ALL, devuelve todos los registros de las tablas
combinadas.

Ejemplo: de la tabla 2
2.3. LOAD DATA INFILE
Lee registros desde un fichero de texto a una tabla a muy alta velocidad. El
nombre de fichero debe darse como una cadena literal.

LOAD DATA INFILE "nombre_archivo.txt"


INTO TABLE nombre_tabla
[FIELDS TERMINATED BY 'string']
[LINES TERMINATED BY 'string']

Ejemplo:

Archivo de texto:

Tabla ciudades
2.4. TRUNCATE TABLE
Vacía una tabla completamente. Es equivalente a un comado DELETE que
borra todos los registros.
2.5. SUBCONSULTA
Una subconsulta es un comando SELECT dentro de otro comando. MySQL 5.0
soporta todas las formas de subconsultas y operaciones que requiere el
estándar SQL, así como algunas características específicas de MySQL.

Las principales ventajas de subconsultas son:

 Permiten consultas estructuradas de forma que es posible aislar cada parte


de un comando.

 Proporcionan un modo alternativo de realizar operaciones que de otro modo


necesitarían joins y uniones complejos.

Ejemplos de subconsultas:

a) SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2);

En la tabla de la figura 2, (productos)

b) Ejemplo de una comparación común de subconsultas que no puede


hacerse mediante un join. Encuentra todos los valores en la tabla t1 que
son iguales a un valor máximo en la tabla t2

SELECT column1 FROM t1


WHERE column1 = (SELECT MAX(column2) FROM t2);

c) Aquí hay otro ejemplo, que de nuevo es imposible hacer con un join ya que
involucra agregación para una de las tablas. Encuentra todos los registros
en la tabla t1 que contengan un valor que ocurre dos veces en una columna
dada:
SELECT * FROM t1 AS t
WHERE 2 = (SELECT COUNT(*) FROM t1 WHERE [Link] = [Link]);

d) SELECT s1 FROM t1 WHERE s1 IN (SELECT s1 FROM t2);

e) Si una subconsulta retorna algún registro, entonces EXISTS subquery es


TRUE, y NOT EXISTS subquery es FALSE. Por ejemplo:

SELECT column1 FROM t1 WHERE EXISTS (SELECT * FROM t2);

¿Qué clase de tienda hay en una o más ciudades?

SELECT DISTINCT store_type FROM Stores


WHERE EXISTS (SELECT * FROM Cities_Stores
WHERE Cities_Stores.store_type = Stores.store_type);

¿Qué clase de tienda no hay en ninguna ciudad?

SELECT DISTINCT store_type FROM Stores


WHERE NOT EXISTS (SELECT * FROM Cities_Stores
WHERE Cities_Stores.store_type = Stores.store_type);

Qué clase de tienda hay en todas las ciudades?

SELECT DISTINCT store_type FROM Stores S1


WHERE NOT EXISTS (
SELECT * FROM Cities WHERE NOT EXISTS (
SELECT * FROM Cities_Stores
WHERE Cities_Stores.city = [Link]
AND Cities_Stores.store_type = Stores.store_type));
TABLA DE CONTENIDO
1. COMANDOS DML (Data Manipulation Language-Lenguaje de Manipulación
de Datos) ................................................................................................................. 1
1.1. SELECT ..................................................................................................... 1
1.2. DISTINCT ................................................................................................... 2
1.3. WHERE ...................................................................................................... 3
1.4. AND - OR ................................................................................................... 3
1.5. IN................................................................................................................ 4
1.6. BETWEEN ................................................................................................. 4
1.7. LIKE ........................................................................................................... 5
1.8. ORDER BY ................................................................................................ 6
1.9. FUNCIÓN AVG: ......................................................................................... 7
1.10. FUNCIÓN MAX (MÁXIMO) ..................................................................... 7
1.11. FUNCIÓN MIN (MÍNIMO) ....................................................................... 8
1.12. FUNCIÓN SUM (SUMA) ......................................................................... 8
1.13. FUNCIÓN COUNT (CUENTA NÚMERO DE FILAS) .............................. 8
1.14. GROUP BY: ............................................................................................ 9
1.15. HAVING: ................................................................................................. 9
1.16. ALIAS .................................................................................................... 10
1.17. JOIN ...................................................................................................... 11
1.18. LEFT JOIN ............................................................................................ 13
1.19. RIGHT JOIN.......................................................................................... 13
1.20. CONCAT ............................................................................................... 14
1.21. SUBSTRING ......................................................................................... 14
1.22. TRIM ..................................................................................................... 15
1.23. LTRIM ................................................................................................... 15
1.24. RTRIM................................................................................................... 16
1.25. INSERT INTO ....................................................................................... 16
1.26. UPDATE ............................................................................................... 17
1.27. DELETE FROM .................................................................................... 19
2. SQL AVANZADO ............................................................................................ 20
2.1. UNION...................................................................................................... 20
2.2. UNION ALL .............................................................................................. 21
2.3. LOAD DATA INFILE ................................................................................. 22
2.4. TRUNCATE TABLE ................................................................................. 23
2.5. SUBCONSULTA ...................................................................................... 24

También podría gustarte