是否有任何方法可以在sql的IN子句中使用範圍。在SQL IN子句中使用
我有一個場景,其中我在像列的值:
BIN_1_1
111111 - 222222
用戶輸入的值,例如; 111134,我需要檢查輸入的值是否在列值的範圍內。
有沒有什麼方法可以使用IN語句並在它之間使用?
FOR i in (select * from V_CUS_SEG_BIN_RANGE) LOOP
IF v_input1 IN
(REGEXP_SUBSTR(i.bin_1_1, '[^-]+', 1, 1), REGEXP_SUBSTR(i.bin_1_1, '[^-]+', 1, 2)
THEN
dbms_output.put_line('Duplicate!');
END LOOP;
我得到用RegEx分隔的值,但我可以用它們來比較值是否在範圍之間。
不,這不是'如何'的工作。只需使用'> ='和'<='。 –
我該如何嵌入> =和<=? –
如果'111111'和'222222'位於'INT'的單獨列中,這將更加容易。事實上,任何東西都可以放在允許值「111111 - 222222」的列中,這使得解決這個問題的方法非常脆弱。 –