Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 24th, 2012  |  syntax: None  |  size: 1.93 KB  |  hits: 24  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. if exists insert else update
  2. insert into systemdetail
  3.     (systemname, projectname, systemtype)
  4.     select  distinct T.systemname, T.projectname, S.model
  5.         from    sysList T, requestSystems S
  6.         where   T.systemname = S.systemname and
  7.             S.systemname not in
  8.             (
  9.             select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
  10.             )
  11.        
  12. if (exists (select sd.projectname, sd.systemname from systemdetail sd, sysList t where t.projectname = sd.projectname and t.systemname = sd.systemname)
  13.     update systemDetail
  14.     set projectname = t.projectname,
  15.     systemname = t.systemname
  16.     where ??? <-- this is where I'm stuck
  17. else
  18.     insert into systemdetail
  19.     (systemname, projectname, systemtype)
  20.     select  distinct T.systemname, T.projectname, S.model
  21.         from    sysList T, requestSystems S
  22.         where   T.systemname = S.systemname and
  23.             S.systemname not in
  24.             (
  25.             select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
  26.             )
  27.        
  28. -- Try update first
  29. UPDATE
  30.     S
  31. SET
  32.     systemtype = X.model
  33. FROM
  34.     systemDetail AS S
  35. JOIN
  36. (
  37.     SELECT DISTINCT
  38.         T.systemname, T.projectname, S.model
  39.     FROM
  40.         sysList T, requestSystems S
  41.     WHERE
  42.         T.systemname = S.systemname
  43. ) AS X
  44. ON
  45.     X.systemname = S.systemname
  46. AND X.projectname = S.projectname
  47.  
  48. IF @@ROWCOUNT = 0
  49. BEGIN
  50.     insert into systemdetail
  51.     (systemname, projectname, systemtype)
  52.     select  distinct T.systemname, T.projectname, S.model
  53.         from    sysList T, requestSystems S
  54.         where   T.systemname = S.systemname and
  55.             S.systemname not in
  56.             (
  57.             select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
  58.             )
  59. END