powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Связка двух таблиц по столбцу с разными тип данных ..
8 сообщений из 8, страница 1 из 1
Связка двух таблиц по столбцу с разными тип данных ..
    #39538614
proxy_911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день коллеги, прощу помочь задачу..

Есть таблица CITIES в нем есть поля CIT_ID NUMBER; со значениям

CIT_ID
1
2
3
4

И ещё есть таблица REGIONS в нем есть поля CIT_CIT_ID VARCHAR2(100); со значениям

CIT_CIT_ID
1,2
3,4

Не подскажите как мне связать эти две столбцы CIT_ID = CIT_CIT_ID?

Напишу так но не получается :
Код: plsql
1.
select * from CITIES C  where C.CIT_ID IN (select R.CIT_CIT_ID from REGIONS R) 



Не подскажите ещё какие варианты есть ?
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538629
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Развернуть regions.CIT_CIT_ID в строки любым удобным способом, соединить
2. Присобачить к CIT_CIT_ID символы ',' слева и справа, соединять по instr(','||CIT_CIT_ID||',', to_char(CIT_ID,'fm9999990')) > 0 или по ','||CIT_CIT_ID||',' like '%,'||to_char(CIT_ID,'fm9999')||',%'
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538631
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
proxy_911Добрый день коллеги, прощу помочь задачу..

Есть таблица CITIES в нем есть поля CIT_ID NUMBER; со значениям

CIT_ID
1
2
3
4

И ещё есть таблица REGIONS в нем есть поля CIT_CIT_ID VARCHAR2(100); со значениям

CIT_CIT_ID
1,2
3,4

Не подскажите как мне связать эти две столбцы CIT_ID = CIT_CIT_ID?

Напишу так но не получается :
Код: plsql
1.
select * from CITIES C  where C.CIT_ID IN (select R.CIT_CIT_ID from REGIONS R) 



Не подскажите ещё какие варианты есть ?
Вариант 1
Код: plsql
1.
select C.* from CITIES C, REGIONS R  where  R.CIT_CIT_ID like '%'||TO_CHAR(C.CIT_ID)||'%'


Вариант 2
Код: plsql
1.
select C.* from CITIES C, REGIONS R  where  instr(R.CIT_CIT_ID, TO_CHAR(C.CIT_ID)) > 0
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538637
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fogel,

CIT_ID= 1

CIT_CIT_ID='21,12'

.....
stax
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538638
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StaxFogel,

CIT_ID= 1

CIT_CIT_ID='21,12'

.....
stax
ну да, andrey_anonymous это предусмотрительно учёл
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538644
Vlas2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только тут тоже нужно добавить запятые:
andrey_anonymous...
2. Присобачить к CIT_CIT_ID символы ',' слева и справа, соединять по instr(','||CIT_CIT_ID||',', ','||to_char(CIT_ID,'fm9999990')||',') > 0 или по ','||CIT_CIT_ID||',' like '%,'||to_char(CIT_ID,'fm9999')||',%'
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39538651
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlas2,

очепятка

......
stax
...
Рейтинг: 0 / 0
Связка двух таблиц по столбцу с разными тип данных ..
    #39540247
proxy_911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, коллеги получилось!!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Связка двух таблиц по столбцу с разными тип данных ..
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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