powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поиск одинаковых полей.
7 сообщений из 7, страница 1 из 1
Поиск одинаковых полей.
    #39913269
ViktorY_SSK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите решить проблемы мне надо найти людей по имени фамилии и отчеству по одинаковым совпадением по первым, пяти буквам.
Буду признателен за любую помощь. спасибо.
Select
T1.LAST_NAME||' '||T1.FST_NAME||' '||T1.MID_NAME as FIO1
,t2.credential_num as Pasport
,t1.BIRTH_DT as BIRTH_DATA
,case when SUBSTR (t1.last_name, 1 , 5) = SUBSTR (t1.last_name, 1 , 5)
and SUBSTR (t1.fst_name, 1 , 4) = SUBSTR (t1.fst_name, 1 , 4)
and SUBSTR (t1.mid_name, 1 , 5) = SUBSTR (t1.mid_name, 1 , 5)
and SUBSTR (t2.credential_num, 5, 4) = SUBSTR (t2.credential_num, 5, 4)
and SUBSTR (t1.BIRTH_DT, 2, 4) = SUBSTR (t1.BIRTH_DT, 2, 4)
then 'yes'
else 'NO'
end as SOVPADENIA_5_5
from cont t1
join credt2
on t1.r_id = t2.cont_id
where t1.last_name <> '-'
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913279
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorY_SSK,
у тебя все будут 'yes'
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913288
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123йй
ViktorY_SSK,
у тебя все будут 'yes'


*кроме строк с нуловым полем
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913291
iOracleDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913314
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorY_SSK,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
SQL> ed
Wrote file afiedt.buf

  1  with f(ID,LAST_NAME,FST_NAME,MID_NAME) as (
  2  select 1,'Иванов','Иван','Иванович' from dual union all
  3  select 2,'Иванок','Иван','Иванович' from dual union all
  4  select 3,'Иваночек','Иван','Иванонковыч' from dual union all
  5  select 4,'Петров','Петро','Олександрович' from dual
  6  )
  7  select
  8    t1.LAST_NAME||' '||t1.FST_NAME||' '||t1.MID_NAME fio
  9   ,t2.LAST_NAME||' '||t2.FST_NAME||' '||t2.MID_NAME first_5
 10  from f t1,f t2
 11  where
 12       t1.id<t2.id(+)  -- еслі надо заменіть на <>
 13   and t2.LAST_NAME(+) like substr(t1.LAST_NAME,1,5)||'%'
 14   and t2.FST_NAME(+)  like substr(t1.FST_NAME,1,5)||'%'
 15*  and t2.MID_NAME(+)  like substr(t1.MID_NAME,1,5)||'%'
SQL> /

FIO                          FIRST_5
---------------------------- ----------------------------
Иванов Иван Иванович         Иванок Иван Иванович
Иванов Иван Иванович         Иваночек Иван Иванонковыч
Иванок Иван Иванович         Иваночек Иван Иванонковыч
Иваночек Иван Иванонковыч
Петров Петро Олександрович



.....
stax
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913578
ViktorY_SSK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ViktorY_SSK,

Нашел путь через SUBSTR и COUNT.
у меня из 1млн строк выводит 50т строк.
У некоторых строк разный ID а у некоторых он совпадает.
Мне нужно отсеять те у которых ID совпадает.
Подскажите куда капнуть для корректного вывода двух ID или как сделать грамотное условие.
...
Рейтинг: 0 / 0
Поиск одинаковых полей.
    #39913604
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorY_SSK

Мне нужно отсеять те у которых ID совпадает.

where_clause
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Поиск одинаковых полей.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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