Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как в поле LONG найти слово, на подобии LIKE '%%' в VC2 / 9 сообщений из 9, страница 1 из 1
16.04.2003, 15:26
    #32142246
Yuraz.com
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Как в поле LONG найти слово, как на подобии LIKE '%%' в VARCHAR2?
...
Рейтинг: 0 / 0
16.04.2003, 15:28
    #32142251
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
К LONG не применемы строковые функции.
Если только в приложении реализуешь поиск.
...
Рейтинг: 0 / 0
16.04.2003, 15:33
    #32142260
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Кстати, и в CLOB тоже. Но можно интермедийный индекс построить.
...
Рейтинг: 0 / 0
16.04.2003, 16:00
    #32142318
Yuraz.com
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
А возможно всё таки средствами SQL вытянуть данные LONG, и найти исконное слово? Дело в том, что я приложение не пишу, и обхожусь только навигатором SQL - TOAD, но слово в таблице со столбцом LONG очень надо найти..
...
Рейтинг: 0 / 0
16.04.2003, 16:05
    #32142328
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Стандартными средствами никак.
...
Рейтинг: 0 / 0
16.04.2003, 16:05
    #32142330
AI
AI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
select xxx from ttt where contains(col,'str')>0

Но эта хиромантия работает только при наличии контекстного индекса (или интермедийного, как сказал Sott Tiger). Работает для LONG и LOB, причем в них могут содержаться и бинарные файлы типа word, excel...
...
Рейтинг: 0 / 0
16.04.2003, 16:23
    #32142368
Yuraz.com
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Да, не работает.. Может написал не так?

FBI_F2K - таблица
SQL_F2K - поле LONG

select SQL_F2K from FBI_F2K where contains(SQL_F2K,'slovo')>0
...
Рейтинг: 0 / 0
16.04.2003, 16:27
    #32142371
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Ну сказали же - индекс построй интермедийный (create index blah-blah-blah indextype ctxsys.context). В схеме появятся 4 характерные :) таблички. Читай доку по interMedia Text (Oracle Text).
...
Рейтинг: 0 / 0
16.04.2003, 17:00
    #32142447
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в поле LONG найти слово, на подобии LIKE '%%' в VC2
Если на злобу дня- напиша функцию, которая будет LONG записывать в VARCHAR2, если ты уверен, что там не более 32765 символов, или в CLOB:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
create table test (
    test_id number( 9 )
  , ldata long
  , constraint pk_test primary key (test_id)
)
/
insert into test (test_id, ldata) values ( 1 , '123456ABC');
commit;

create or replace function ldata2varchar (
  p_test_id number
) return varchar2 as
  v varchar2( 32765 );
begin
  execute immediate 'begin select ldata into :v from test where test_id = :test_id; end;'
  using out v, p_test_id;
  return v;
end;
/
select ldata2varchar( 1 ) from dual; 
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как в поле LONG найти слово, на подобии LIKE '%%' в VC2 / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]