En SQL, a veces necesitamos actualizar varios registros en una sola consulta. Usaremos la palabra clave UPDATE para lograr esto. Para esto, usamos 2 tipos de muestras, es decir, la primera basada en una condición y la segunda basada en múltiples condiciones. Para este artículo, usaremos Microsoft SQL Server como nuestra base de datos y seleccionaremos la palabra clave.
Paso 1: Crear una base de datos. Para esto, use el siguiente comando para crear una base de datos llamada GeeksForGeeks.
Pregunta:
CREATE DATABASE GeeksForGeeks
Producción:
Paso 2: Utilice la base de datos GeeksForGeeks. Para esto, use el siguiente comando.
Pregunta:
USE GeeksForGeeks
Producción:
Paso 3: Cree una tabla BANDS dentro de la base de datos GeeksForGeeks. Esta tabla tiene 3 columnas, a saber, BAND_NAME, PERFORMING_COST y NUMBER_OF_MEMBERS, que contienen nombres, tarifas de presentación y el número de miembros de una banda.
Pregunta:
CREATE TABLE BANDS( BAND_NAME VARCHAR(20), PERFORMING_COST INT, NUMBER_OF_MEMBERS INT);
Producción:
Paso 4: Describe la estructura del tablero BANDS.
Pregunta:
EXEC SP_COLUMNS BANDS;
Producción:
Paso 5: Inserte 5 filas en la tabla BANDAS.
Pregunta:
INSERT INTO BANDS VALUES('INDIAN OCEAN',10000,5); INSERT INTO BANDS VALUES('BTS',20000,6); INSERT INTO BANDS VALUES('METALLICA',30000,10); INSERT INTO BANDS VALUES('BEATLES',40000,4); INSERT INTO BANDS VALUES('EAGLES',50000,4);
Producción:
Paso 6: Muestra todas las filas de la tabla BANDS.
Pregunta:
SELECT * FROM BANDS;
Producción:
Paso 7: Actualizar todos los registros de la tabla MUJERES para satisfacer una sola condición. La condición aquí es que el valor de la columna NÚMERO DE MIEMBROS Debe ser inferior a 5. Si se cumple la condición, el valor de la columna COSTE_DE_RENDIMIENTO se duplica a sí mismo. Usa la palabra clave ACTUALIZAR y LUGAR lograr esto.
Sintaxis:
UPDATE TABLE_NAME SET COLUMN_NAME = VALUE WHERE CONDITION;
Pregunta:
UPDATE BANDS SET PERFORMING_COST = 2*PERFORMING_COST WHERE NUMBER_OF_MEMBERS<=5;
Producción:
Paso 8: Muestra todas las filas de la tabla FIRM actualizada.
Pregunta:
SELECT * FROM BANDS;
Nota: el es COSTE_DE_RENDIMIENTO doblado para que las bandas tengan NÚMERO DE MIEMBROS<=5.
Producción:
Paso 9: Actualizar todos los registros de la tabla MUJERES dos (plural) condiciones que se cumplen. La condición aquí es si el NOMBRE DE BANDA es ‘METALLICA’, entonces un COSTE_DE_RENDIMIENTO establecido en 90000 y si el NOMBRE DE BANDA es ‘BTS’, entonces un COSTE_DE_RENDIMIENTO está establecido en 200000. Utilice la palabra clave ACTUALIZAR y CUANDO lograr esto. Esta pregunta parece un bloque en todo caso.
Sintaxis:
UPDATE TABLE_NAME SET COLUMN_VALUE = CASE COLUMN_NAME WHEN 'COLUMN_NAME1' THEN COLUMN_VALUE1 WHEN 'COLUMN_NAME2' THEN COLUMN_VALUE2 ELSE COLUMN_VALUE END WHERE BAND_NAME IN('COLUMN_NAME1', 'COLUMN_NAME2');
Pregunta:
UPDATE BANDS SET PERFORMING_COST = CASE BAND_NAME WHEN 'METALLICA' THEN 90000 WHEN 'BTS' THEN 200000 ELSE PERFORMING_COST END WHERE BAND_NAME IN('METALLICA', 'BTS');
Producción:
Paso 10: Muestra todas las filas de la tabla FIRM actualizada.
Pregunta:
SELECT * FROM BANDS;
Nota: el es COSTE_DE_RENDIMIENTO para METALLICA y BTS actualizados a 90000 y 200000 respectivamente.
Producción: