我對這個任務有一些邏輯思考的麻煩。 因此,任務要求返回字母列表中第一個較大的字母的位置。 例如:打印字符列表中較大的字母的位置
ABVD -> 3
BCDG -> 4
CFDE -> 2
這個任務建議使用lenght,ASCII,並命名爲塊,功能
原來這就是我到目前爲止做:
declare
x varchar2(10) :='ABFD';
BEGIN
FOR i in 1..length(x) LOOP
dbms_output.put_line(ASCII(SUBSTR(x, i, 1)));
END LOOP;
END;
我的想法是,以將字母轉換爲數字:65,66,70,68。該模式是x + 1,並且由於數字70不等於66 + 1,所以程序將返回該數字的位置,即3. 不幸的是,我不知道如何將這個想法變成代碼。你能給我一些提示/建議嗎?謝謝!
爲什麼轉換爲數字?是的,70> 65,但'F'>'A'也是。 –
感謝您的回覆!我不知道我們實際上可以做到這一點。 – Chopsticks