| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Oracle > есть ли аналог SQL'ской ф-ции substring в Oracle? |
| Автор: s_a_s_h_a 2.5.2006, 15:19 |
| Нужно получить часть содержимого текстового поля. В SQL для этого есть функция substring(str from n to m). А вопрос в том, есть ли аналог этой функции в Oracle и какой синтаксис этого аналога? |
| Автор: batigoal 2.5.2006, 15:27 |
| SUBSTR('ABCDEFG',3,4) даст тебе CDEF. |
| Автор: s_a_s_h_a 2.5.2006, 15:37 |
| Спасибо. Это работает с полями типа varchar2, а что делать с полями типа long? /* У меня ошибка: "inconsistent datatypes" */ |
| Автор: batigoal 2.5.2006, 16:16 |
| Ну так ведь понятие "подстрока" применимо только к строкам. Насчет чисел не знаю. Видимо, нужно применять математические операции (округление и пр.) |
| Автор: s_a_s_h_a 2.5.2006, 16:22 |
| в этом ... Oracle тип Long используется для хранения больших объемов текста переменной длины. Может быть указана любая длина до 2 Гб. |
| Автор: batigoal 2.5.2006, 16:28 |
| Может быть, ты имеешь в виду CLOB? |
| Автор: s_a_s_h_a 2.5.2006, 16:39 |
| не |
| Автор: batigoal 2.5.2006, 16:50 | ||
| Да, точно. Я и не знал. Добавлено @ 16:50 В доке, кстати, написано, что
|
| Автор: LSD 2.5.2006, 22:20 |
| TO_LOB() а дальше работать через DBMS_LOB. |
| Автор: s_a_s_h_a 3.5.2006, 15:57 |
| LSD, можете написать как примерно будут выглядеть запросы? есть таблица my_table, в ней есть поле my_col типа clob. Мне надо запихать результат select-запроса в компонент DBGrid на C Builder'e, который не поддерживает тип clob /*может не совсем так, но в общем вылетает ошибка, когда просто пытаюсь поместить результат следующего запроса в DBGrid: select my_col from my_table*/, но туда можно запихать строку. Собственно вопрос заключается в следующем: какой запрос надо написать, чтобы результатом была строка, точнее часть поля my_col в виде строки? // если мутно задан вопрос и описана ситуация, то напишите, пожалуйста, об этом, я попытаюсь сформулировать его по-другому. |
| Автор: LSD 4.5.2006, 23:16 |
| А может просто перейти на ODAC? |