在更新表格时,我对自己认为我的方式非常麻烦,所以我想使用 case 语句。虽然我想在一个简单的过程中使用它,但这就是我的问题所在!似乎无法正确处理。
非常感谢您的帮助。
我的桌子:
drop table tbh;
CREATE TABLE tbh ( a NUMBER, b number, c varchar2(3));
INSERT INTO tbh VALUES( 1, '0','');
INSERT INTO tbh VALUES( 2, '2','');
INSERT INTO tbh VALUES( 3, '7','');
我的情况:
UPDATE tbh
SET c =
CASE WHEN a > b THEN 'W'
WHEN a < b THEN 'L'
WHEN a = b THEN 'D'
END ;
我尝试了什么:
CREATE OR REPLACE PROCEDURE WIN (IN P_WT VARCHAR2(3))
BEGIN
CASE P_WT
WHEN a > b THEN
UPDATE tbh SET c = 'W';
WHEN a < b THEN
UPDATE tbh SET c = 'L';
WHEN a = b THEN
UPDATE tbh SET c = 'D';
END CASE;
END;
/