0
我寫了一些邏輯來確定kcode(醫生帳單)是否對患者正確。我編寫了一些邏輯來循環記錄,並在列中放置了值得kcode的正確CP(護理提供者)的ID。由於某種原因,最後一條記錄或最後2條記錄不符合邏輯。這是我的邏輯代碼(在光標內):從公式中刪除最後一條記錄
OPEN kcode_count;
kcode_loop: LOOP
FETCH kcode_count INTO dbPTNT_ID, dbCP_ID, dbSEEN, holder, dbDATE, holder2;
IF done THEN
LEAVE kcode_loop;
END IF;
IF dbPTNT_ID <> setPTNT_ID THEN
IF setPTNT_ID <> 0 THEN
UPDATE tmp_kcodes
SET SHOULD_GET = setCP_ID
WHERE setPTNT_ID = PTNT_ID;
END IF;
SET setPTNT_ID = dbPTNT_ID;
SET setCP_ID = dbCP_ID;
SET setSEEN = dbSEEN;
SET setDATE = dbDATE;
ELSEIF dbSEEN > setSEEN THEN
SET setCP_ID = dbCP_ID;
SET setSEEN = dbSEEN;
SET setDATE = dbDATE;
ELSEIF dbSEEN = setSEEN THEN
IF dbDATE < setDATE THEN
SET setCP_ID = dbCP_ID;
SET setSEEN = dbSEEN;
SET setDATE = dbDATE;
END IF;
END IF;
END LOOP kcode_loop;
CLOSE kcode_count;
如下所示,在SHOULD_GET列中,最後兩個記錄產生NULL。有什麼理由?
您已經在一個塊中使用過'SET SHOULD_GET',它可能不會進入該塊,請檢查您的邏輯。 – Avishek
@AvishekChat這是因爲我希望它只是更新它通過每個具體患者的ID –
的'更新後,你應該把'print'或'臨時調試table'走後tmp_kcodes SET SHOULD_GET = setCP_ID WHERE setPTNT_ID = PTNT_ID ;',看什麼時候,什麼時候更新...... – Avishek