powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Можно в like затолкать несколько значений?
21 сообщений из 21, страница 1 из 1
Можно в like затолкать несколько значений?
    #33497986
mod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно вытащить из поля dog скажем 42% и 78%, а в другом случае 66%, 93% и 54%. Можно как нибудь это реализовать в запросе через подстановку одной переменной?
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #33498021
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На приведённых примерах можно так:
Код: plaintext
1.
2.
3.
4.
:dog := '42,78'
:dog := '66,93,54'

where instr(',' || :dog, ',' || substr(dog,  1 ,  2 )) >  0 
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #33498022
ten
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я правильно понял вопрос, то CASE, DECODE еще не отменяли.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #33498037
mod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, совсем забыл про substr...
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #33498165
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в 10g есть вариант
Код: plaintext
select regexp_instr('541111122','^(66|93|54)') from dual;
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Можно в like затолкать несколько значений?
    #39316719
Аленчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mod,
Пусть уже не актуально, отвечать автору, но вот мой опыт с этой ерундистикой.
Мне из одного столбика нужно было вытащить порядка 10 разных шаблонов значений. Обрыла всю сеть, нашла где то в одном месте, уже даже не припомню где именно .
Пример, что получилось у меня выглядит вот так. До этого делала "с костылями" по отдельности вытаскивала значения для каждого шаблона. Поэтому при отборе по этому условию я уже знала какая циферка в итоге у меня получится. В итоге получилось все пучком. Пробуйте ребят.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
   
select kod1 from table1
where type in (2,3,4) 
         and (kod1 like  '003%' 
                or kod1  like '004%' 
                or kod1 like '005%'
                or kod1  like '006%' 
                or kod1  like '007%' 
                or kod1  like '008%')
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316723
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АленчикПробуйте ребят.Открой для себя regexp_like, лара крофт.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316772
субстр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Аленчик,

OR лаконичнее писать через IN.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316774
Аленчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic, спасибо буду знать
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316781
Vint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
субстр,
ну так покажи класс перепиши этот запрос через in..... а лучше следующий раз не пиши под серым ником. и вообще не пиши.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316789
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vintсубстр,
ну так покажи класс перепиши этот запрос через in..... а лучше следующий раз не пиши под серым ником. и вообще не пиши.Ники надо читать внимательнее.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316797
Аленчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,
так же еще не просто последовательность от 003 до 006, там разные шаблоны были, твоя версия интересна, можешь привести примерчик, если допустим к этим шаблонам добавить другие н/р: '0869%', '0872%', '0873110%'
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316813
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аленчикможешь привести примерчик, если допустим к этим шаблонам добавить другие н/р: '0869%', '0872%', '0873110%'С регулярками на "Вы" и шёпотом? Попробуй всё же сперва сама.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316862
Guest7776
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АленчикElic,
так же еще не просто последовательность от 003 до 006, там разные шаблоны были, твоя версия интересна, можешь привести примерчик, если допустим к этим шаблонам добавить другие н/р: '0869%', '0872%', '0873110%'

Код: plsql
1.
2.
3.
4.
5.
6.
7.
SELECT f
  FROM (
        SELECT '0'||to_char(level*847+949) f
          FROM dual
         connect by level <10
       )
 WHERE regexp_like(f,'^(085|06|017)')  
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316882
Аленчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,

Простите, извините.

Спасибо еще раз, очень удобно, всего одна строка, для этого дебильного списка. ВСЕ ПОЛУЧИЛОСЬ))))))))
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316884
Аленчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Guest7776,

все проще получилось. Но все равно спасибо)))))
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316927
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicС регулярками на "Вы" и шёпотом?
Строить регулярку на лету или проверить по substr?
Вопрос достойный Гамлета. :)

2TC - а можно еще и так (нужно ли?):
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
with masks as (
select column_value mask from table(sys.odcivarchar2list('0869','0872','0873110'))
)
, t as (
SELECT '0'||to_char(level+868)||'99' f
          FROM dual
         connect by level <10
 union all          
SELECT '0'||to_char(level+8720)||'10' f
          FROM dual
         connect by level <100
)
select t1.* from t t1
 where exists (
   select null from masks m
    where SUBSTR(t1.f,1,LENGTH(m.mask))=m.mask
 )
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316935
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей АрсеньевСтроить регулярку на летуЯ динамики не увидел. - Плохо смотрел?
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316942
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicСергей АрсеньевСтроить регулярку на летуЯ динамики не увидел. - Плохо смотрел?
with masks as (
select '^('||LISTAGG(column_value,'|')within group(order by null)||').*' mask from table(sys.odcivarchar2list(:1))
)
, t as (
SELECT '0'||to_char(level+868)||'99' f
FROM dual
connect by level <10
union all
SELECT '0'||to_char(level+8720)||'10' f
FROM dual
connect by level <100
)
select t1.* from t t1,masks m
where regexp_like(t1.f,m.mask)
;
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316947
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Арсеньевwith masksВыдумывать ты горазд, но покажи подобное у неё.
...
Рейтинг: 0 / 0
Можно в like затолкать несколько значений?
    #39316950
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic,

Так у нее уже все и так получилось.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Можно в like затолкать несколько значений?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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