comandos de la pc2
comandos de la pc2
comandos de la pc2
CREATE (Crear)
Nombre NVARCHAR(50),
Edad INT,
Departamento NVARCHAR(50)
);
2. ALTER (Modificar)
3. DROP (Eliminar)
4. RENAME (Renombrar)
Descripción: Elimina todos los registros de una tabla sin eliminar su estructura.
UPDATE Empleados
SET Edad = 31
WHERE ID = 1;
WHERE ID = 1;
FROM Empleados
FROM Empleados;
FROM Empleados
SELECT Nombre,
CASE
ELSE 'Mayor'
END AS CategoriaEdad
FROM Empleados;
FROM Empleados
Descripción: Combina cada fila de una tabla con cada fila de otra.
SELECT *
FROM Empleados e
FROM Empleados e
FROM Empleados e
Funciones Agregadas
1. SUM
sql
Copiar código
2. COUNT
sql
Copiar código
SELECT COUNT(*) AS TotalEmpleados FROM Empleados;
3. AVG
sql
Copiar código
4. MAX
sql
Copiar código
5. MIN
sql
Copiar código
Group By y Having
1. GROUP BY
sql
Copiar código
FROM Empleados
GROUP BY departamento;
Agrupa los empleados por departamento y calcula el total de salarios por cada grupo.
2. HAVING
sql
Copiar código
FROM Empleados
GROUP BY departamento
Subconsultas
1. IN
sql
Copiar código
SELECT nombre
FROM Empleados
2. EXISTS
sql
Copiar código
SELECT nombre
FROM Empleados e
Funciones de Fecha
sql
Copiar código
FROM Empleados;
2. DATEADD
sql
Copiar código
3. DATEDIFF
sql
Copiar código
FROM Empleados;
4. GETDATE
sql
Copiar código
Funciones de Cadena
1. CONCAT
sql
Copiar código
2. LEN
sql
Copiar código
3. SUBSTRING
sql
Copiar código
4. LOWER, UPPER
sql
Copiar código
sql
Copiar código
Funciones de Conversión
1. CAST
sql
Copiar código
2. CONVERT
sql
Copiar código
Transact SQL
1. Creación de Funciones
sql
Copiar código
RETURNS INT
AS
BEGIN
END;
sql
Copiar código
@EmpleadoID INT,
@NuevoSalario DECIMAL(10, 2)
AS
BEGIN
UPDATE Empleados
WHERE id = @EmpleadoID;
END;
sql
Copiar código
4. Cursores
sql
Copiar código
OPEN EmpleadosCursor;
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @nombre;
END;
CLOSE EmpleadosCursor;
DEALLOCATE EmpleadosCursor;
5. Transacciones: Commit y Rollback
sql
Copiar código
BEGIN TRANSACTION;
IF @@ERROR = 0
COMMIT TRANSACTION;
ELSE
ROLLBACK TRANSACTION;
@Anio INT
AS
BEGIN
FROM Ordenes
UPDATE p
SET Consistencia =
CASE
WHEN (SELECT COUNT(*)
FROM Ordenes o
END
FROM Proveedores p;
END;
GO
Pregunta 2: Usando la base de datos Northwind que calcule la edad de un empleado (Tabla
Employees, campo BirthDate) y por medio de una sentencia CASE deberá calcular y mostrar si
el empleado es jubilado (mayores a 70) o si le falta otros años para trabajar (menores a 60) y si
el código del empleado (EmployeeID) se encontró al empleado
SELECT
EmployeeID,
FirstName,
LastName,
CASE
END AS Estado,
CASE
END AS Resultado
FROM Employees;
Pregunta 3: Crear una transacción para un procedimiento almacenado que permita registrar un
PRODUCTO controlando dicha inserción por medio de una transacción, enviando un mensaje
en cada ocasión, caso contrario enviar PRODUCTO REGISTRADO CON ÉXITO, caso contrario
OCURRIÓ UN ERROR AL isertar.
@NombreProducto NVARCHAR(100),
@Stock INT
AS
BEGIN
BEGIN TRY
-- Inserta el producto
-- Confirma la transacción
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION;
END CATCH
END;
GO
@ProductoID INT,
@NuevoPrecio DECIMAL(10, 2)
AS
BEGIN
BEGIN TRY
UPDATE Productos
IF @@ROWCOUNT = 0
BEGIN
END
-- Confirma la transacción
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION;
END CATCH
END;
GO