
Untitled
By: a guest on
Apr 24th, 2012 | syntax:
None | size: 1.93 KB | hits: 24 | expires: Never
if exists insert else update
insert into systemdetail
(systemname, projectname, systemtype)
select distinct T.systemname, T.projectname, S.model
from sysList T, requestSystems S
where T.systemname = S.systemname and
S.systemname not in
(
select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
)
if (exists (select sd.projectname, sd.systemname from systemdetail sd, sysList t where t.projectname = sd.projectname and t.systemname = sd.systemname)
update systemDetail
set projectname = t.projectname,
systemname = t.systemname
where ??? <-- this is where I'm stuck
else
insert into systemdetail
(systemname, projectname, systemtype)
select distinct T.systemname, T.projectname, S.model
from sysList T, requestSystems S
where T.systemname = S.systemname and
S.systemname not in
(
select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
)
-- Try update first
UPDATE
S
SET
systemtype = X.model
FROM
systemDetail AS S
JOIN
(
SELECT DISTINCT
T.systemname, T.projectname, S.model
FROM
sysList T, requestSystems S
WHERE
T.systemname = S.systemname
) AS X
ON
X.systemname = S.systemname
AND X.projectname = S.projectname
IF @@ROWCOUNT = 0
BEGIN
insert into systemdetail
(systemname, projectname, systemtype)
select distinct T.systemname, T.projectname, S.model
from sysList T, requestSystems S
where T.systemname = S.systemname and
S.systemname not in
(
select d.systemname, d.ProjectName from systemdetail d,syslist t2 where t2.systemname = d.SystemName and t2.projectname=d.ProjectName
)
END