带判断逻辑的SQL
DECLARE
v_flag NUMBER;
BEGIN
v_flag :=0;
SELECT COUNT(*) into v_flag FROM FlowPARAMATER WHERE form_kind_id='HCM.FORM.28'AND PARAMATERCODE='1002' AND PARAMATERESULT='1';
IF v_flag>0 THEN
Delete SYSPERSONGROUP WHERE GROUPID='f47e6e25-9279-451b-81fd-be34b3920400';
Insert Into SYSPERSONGROUP( GROUPID, GROUPTYPEID, GROUPNAME, GROUPDESCRIBE, effectdate, creationtime, createdby, lastupdatetime, lastupdatedby, FUNCTIONID, MAPPINGID) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', '7', '默认强制加班比对的群组', '1002转1011的数据', to_date('1900-01-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss'), to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', '010170', '1011');
Delete SYSPERSONGROUPITEM WHERE GROUPID='f47e6e25-9279-451b-81fd-be34b3920400';
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 2, '0', 1, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '1', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '2', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '3', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '4', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '5', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( 'f47e6e25-9279-451b-81fd-be34b3920400', 14, '6', 0, to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa', to_date('2012-11-14 09:44:40', 'yyyy-mm-dd hh24:mi:ss'), 'sa');
commit;
end if;
END;
带游标的
DECLARE
v_groupID NVARCHAR2 (40);
CURSOR cursor_1
IS
SELECT SYSPERSONGROUP.GROUPID
FROM SYSPERSONGROUP
INNER JOIN ATDOVERTIMEUPPERLIMITGROUP ON SYSPERSONGROUP.MAPPINGID = ATDOVERTIMEUPPERLIMITGROUP.GROUPID;
BEGIN
OPEN cursor_1 ;
BEGIN
LOOP
FETCH cursor_1
INTO v_groupID;
EXIT WHEN cursor_1%NOTFOUND;
BEGIN
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'1', 0, sysdate, N'sa', sysdate, N'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'2', 0, sysdate, N'sa', sysdate, N'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'3', 0, sysdate, N'sa', sysdate, N'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'4', 0, sysdate, N'sa', sysdate, N'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'5', 0, sysdate, N'sa', sysdate, N'sa');
Insert Into SYSPERSONGROUPITEM( GROUPID, CONDITIONTYPE, CONDITIONVALUE, ISINSUB, creationtime, createdby, lastupdatetime, lastupdatedby) Values ( v_groupID, 14, N'6', 0, sysdate, N'sa', sysdate, N'sa');
END;
END LOOP;
END;
IF cursor_1%ISOPEN
THEN
CLOSE cursor_1;
END IF;
END;
commit;
SQL SERVER
DECLARE @flag INT; SET @flag = 0; SELECT @flag=COUNT(*) FROM FlowPARAMATER WHERE form_kind_id='HCM.FORM.28' AND PARAMATERCODE='1002' AND PARAMATERESULT='1'; IF @flag>0 BEGIN Delete SYSPERSONGROUP WHERE GROUPID='f47e6e25-9279-451b-81fd-be34b3920400'; Insert Into SYSPERSONGROUP( [GROUPID], [GROUPTYPEID], [GROUPNAME], [GROUPDESCRIBE], [effectdate], [creationtime], [createdby], [lastupdatetime], [lastupdatedby], [FUNCTIONID], [MAPPINGID]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', N'7', N'默认强制加班比对的群组', N'1002转1011的数据', '1900-01-01 00:00:00', '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa', N'010170', N'1011'); Delete SYSPERSONGROUPITEM WHERE GROUPID='f47e6e25-9279-451b-81fd-be34b3920400'; Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 2, N'0', 1, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'1', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'2', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'3', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'4', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'5', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( N'f47e6e25-9279-451b-81fd-be34b3920400', 14, N'6', 0, '2012-11-14 09:44:40', N'sa', '2012-11-14 09:44:40', N'sa'); END;
带游标的SQL
DECLARE @groupID VARCHAR(40);
DECLARE cursor_1 CURSOR LOCAL FORWARD_ONLY FOR
SELECT SYSPERSONGROUP.GROUPID
FROM SYSPERSONGROUP
INNER JOIN ATDOVERTIMEUPPERLIMITGROUP ON SYSPERSONGROUP.MAPPINGID = ATDOVERTIMEUPPERLIMITGROUP.GROUPID
BEGIN
OPEN cursor_1 ;
L1:
FETCH NEXT FROM cursor_1 INTO @groupID ;
WHILE @@FETCH_STATUS = 0
BEGIN
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'1', 0, GETDATE(), N'sa', GETDATE(), N'sa');
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'2', 0, GETDATE(), N'sa', GETDATE(), N'sa');
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'3', 0, GETDATE(), N'sa', GETDATE(), N'sa');
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'4', 0, GETDATE(), N'sa', GETDATE(), N'sa');
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'5', 0, GETDATE(), N'sa', GETDATE(), N'sa');
Insert Into SYSPERSONGROUPITEM( [GROUPID], [CONDITIONTYPE], [CONDITIONVALUE], [ISINSUB], [creationtime], [createdby], [lastupdatetime], [lastupdatedby]) Values ( @groupID, 14, N'6', 0, GETDATE(), N'sa', GETDATE(), N'sa');
BREAK;
END ;
CLOSE cursor_1 ;
DEALLOCATE cursor_1 ;
END
浙公网安备 33010602011771号