SELECT PHONE, SUBSTR(PHONE, 1, INSTR(PHONE, '-',1,1) -1)
FROM DIRECTORY;
INSTR(String,'char_Search','position from where start searching','occurance')
Если мы не указываем «исходную позицию» и «возникновение», то по умолчанию он принимает значение 1,1.
Поэтому по умолчанию он принимает значение INSTR (телефон, '-', 1,1).--sql возвращает 1-ое вхождение строки string '-' это позиция 4, а затем SUBSTR (PHONE, 1 - 4) 1, которая является SUBSTR (PHONE, 1, 3).
SUBSTR (String, 'начальная позиция',' без символа ') SUBSTR (PHONE, 1, 3) - дает подстроку столбца PHONE из 1-го, который имеет длину 3 символа, что составляет 362
Пример: используя этозначение - '362-127-4285'
SELECT '362-127-4285' Example,
SUBSTR('362-127-4285',1,INSTR('362-127-4285','-')-1) Result
FROM DUAL