Tucucu.com
Porqué hay ciudades en Estados Unidos con nombres en español | Los Amigos Invisibles regresan con más “mambo” que nunca | Las mentiras que se consideran comunes | 25 adorables objetos en color “rose gold” que querrás tener ya | Estos pueden actuar como sustituto de la mayonesa | «Salvados por la campana» 27 años después. | Cómo funcionaba la pistola nintendo sin sensor de movimiento | Después de seis años fue encontrado perro con mas de 15 kilos de pelo. ¡Ve su cambio! | Tu cerebro crea monstruos imaginarios con tu reflejos cuando pasas más de 10 minutos viendote. | Profesora de yoga mata a dos asaltantes en su casa |

SQL Server: ejecutar algo si existe o no algo en un query



Aquí te queremos mostrar algo que aunque es bastante básico puede que no todo el mundo lo ponga en práctica, sobre todo a la hora de hacer inserts o incluso los mismos update, es importante verificar primero si ese registro existe o no para poderlo modificar.
Las siguientes instrucciones para SQL server te ayudarán a hacer eso sin que se te parta la cabeza.
Como hacer un query donde haga un update solo si existe el registro
IF EXISTS (SELECT 1 FROM dbo.table WHERE PK = @PK)
BEGIN
  UPDATE dbo.table WHERE PK = @PK
END
Query donde te permite insertar un registro solo si este no existe en la tabla que quieres.
IF NOT EXISTS (SELECT 1 FROM dbo.table WHERE PK = @PK)
BEGIN
  INSERT INTO dbo.table (fields) values (all values);
END
Aquí te mostramos como puedes hacer un condicional completo, de como hacer si quieres primero verificar el registro para saber si modificar o insertar.
BEGIN TRANSACTION;
IF EXISTS (SELECT 1 FROM dbo.table WHERE PK = @PK)
  BEGIN
    UPDATE dbo.table WHERE PK = @PK
  END
ELSE
  BEGIN
    INSERT INTO dbo.table (fields) values (all values);
  END
COMMIT TRANSACTION;