INSTITUTO UNIVERSITARIO DE TECNOLOGIA “MARIO BRICEÑO IRAGORRY”
IUTEMBI
PROGRAMA ANALITICO DE LA CARRERA DE INFORMÁTICA
MATERIA: ELECTIVA III (BASE DE DATOS II)
UNIDAD I: Entorno gráfico y SSMS.
UNIDAD II: Introducción al SQL Server.
UNIDAD III: Consultas simples.
UNIDAD IV: Consultas multitablas.
UNIDAD V: Consultas de resumen, Subconsultas.
Entorno gráfico y SSMS.
Introducción al SQL Server.
Consultas simples.
Consultas multitablas.
Consultas de resumen, Subconsultas.
Guía teórica: Conceptos clave de SQL Server y consultas
Entorno gráfico y SSMS
El entorno gráfico es la interfaz visual que usas para interactuar con la base de datos sin
necesidad de escribir código para todo. En el caso de SQL Server, la principal herramienta
gráfica es SQL Server Management Studio (SSMS). Piensa en SSMS como el "centro de
control" donde puedes crear bases de datos, tablas, ver la estructura de tus datos y
escribir y ejecutar tus consultas. Es tu ventana al servidor de bases de datos.
Introducción a SQL Server
SQL Server es un sistema gestor de bases de datos relacionales (SGBD). Su función
principal es almacenar, organizar y gestionar grandes cantidades de datos de manera
eficiente. En una base de datos relacional, la información se guarda en tablas, que están
compuestas por filas (registros) y columnas (campos). Por ejemplo, una tabla de
"Clientes" podría tener columnas como IdCliente, Nombre y Email, y cada fila sería un
cliente específico.
Consultas simples
Las consultas son las instrucciones que le das a la base de datos para obtener información.
Las consultas simples usan la sentencia SELECT para recuperar datos de una sola tabla. Los
componentes clave son:
• SELECT: ¿Qué columnas quieres ver? (ej: SELECT Nombre, Apellido)
• FROM: ¿De qué tabla? (ej: FROM Clientes)
• WHERE: ¿Qué condiciones deben cumplir los registros? (ej: WHERE Ciudad =
'Caracas')
Consultas multitablas
A menudo, la información que necesitas está en más de una tabla. Por ejemplo, los datos
del "Pedido" están en una tabla y los datos del "Cliente" en otra. Para combinarlas, usas
JOIN. Los JOIN unen dos o más tablas basándose en una columna común. El más común
es el INNER JOIN, que solo muestra las filas que tienen coincidencias en ambas tablas.
Consultas de resumen y Subconsultas
• Consultas de resumen: Sirven para obtener información agregada de tus datos. Usan
funciones como COUNT (contar), SUM (sumar), AVG (promedio), MAX (máximo) y
MIN (mínimo). A menudo se usan junto con GROUP BY para agrupar los resultados
por una o varias columnas. Por ejemplo, puedes agrupar las ventas por país para
saber el total vendido en cada uno.
• Subconsultas: Son consultas anidadas dentro de otra consulta. La subconsulta se
ejecuta primero y el resultado se usa como parte de la consulta principal. Por
ejemplo, podrías encontrar todos los productos cuyo precio sea mayor que el precio
promedio de todos los productos. La subconsulta calcularía el precio promedio y la
consulta principal lo usaría en la cláusula WHERE.
Guía práctica: Ejemplos de código para practicar
Preparación: Crear tablas de ejemplo
Primero, crea dos tablas para trabajar.
-- Tabla Clientes
CREATE TABLE Clientes (
IdCliente INT PRIMARY KEY,
Nombre VARCHAR(50),
Ciudad VARCHAR(50)
);
-- Tabla Pedidos
CREATE TABLE Pedidos (
IdPedido INT PRIMARY KEY,
IdCliente INT,
Producto VARCHAR(50),
Cantidad INT,
FOREIGN KEY (IdCliente) REFERENCES Clientes(IdCliente)
);
-- Insertar datos de ejemplo en Clientes
INSERT INTO Clientes (IdCliente, Nombre, Ciudad) VALUES
(1, 'Ana', 'Maracaibo'),
(2, 'Luis', 'Barquisimeto'),
(3, 'María', 'Valencia');
-- Insertar datos de ejemplo en Pedidos
INSERT INTO Pedidos (IdPedido, IdCliente, Producto, Cantidad) VALUES
(101, 1, 'Laptop', 1),
(102, 1, 'Mouse', 2),
(103, 2, 'Teclado', 1),
(104, 3, 'Monitor', 1);
1. Consultas simples
1. Seleccionar todos los clientes:
SELECT * FROM Clientes;
2. Seleccionar solo el nombre y la ciudad de los clientes:
SELECT Nombre, Ciudad FROM Clientes;
3. Seleccionar clientes que son de Maracaibo:
SELECT Nombre FROM Clientes WHERE Ciudad = 'Maracaibo';
2. Consultas multitablas (JOIN)
1. Obtener los nombres de los clientes y los productos que han pedido:
o Tip: Usar alias (como C para Clientes y P para Pedidos) hace el código más corto
y legible.
SELECT
C.Nombre,
P.Producto
FROM Clientes AS C
INNER JOIN Pedidos AS P
ON C.IdCliente = P.IdCliente;
3. Consultas de resumen y Subconsultas
1. Contar cuántos pedidos ha hecho cada cliente (GROUP BY):
SELECT
IdCliente,
COUNT(IdPedido) AS TotalPedidos
FROM Pedidos
GROUP BY IdCliente;
2. Calcular el total de artículos pedidos por cada cliente:
SELECT
IdCliente,
SUM(Cantidad) AS TotalArticulos
FROM Pedidos
GROUP BY IdCliente;
3. Encontrar los clientes que han hecho más de un pedido (HAVING):
SELECT
IdCliente,
COUNT(IdPedido) AS TotalPedidos
FROM Pedidos
GROUP BY IdCliente
HAVING COUNT(IdPedido) > 1;
4. Usar una subconsulta para encontrar los clientes que han hecho un pedido (esto es
un ejemplo de cómo usar una subconsulta):
SELECT Nombre FROM Clientes
WHERE IdCliente IN (
SELECT IdCliente FROM Pedidos
);
o La subconsulta SELECT IdCliente FROM Pedidos se ejecuta primero, devolviendo
una lista de IDs de clientes (1, 2, 3).
o La consulta principal luego busca en la tabla Clientes aquellos IdCliente que se
encuentren en esa lista.