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

т.e. возвращаю колонку значений из различных источников (обхожу запрет на PL_SQL)

например

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT		
			'5000' AS CBU_COD , 'V_D_PNL_SD_01' VIEW_NAME , 'COD_PRD_ARE_WW' FIELD_NAME , '96' FIELD_VALUE FROM DUAL
		UNION ALL
		SELECT		
			'5000' AS CBU_COD , 'V_D_LOG_PPED_SL1_01' VIEW_NAME , 'COD_CST_CEN' FIELD_NAME , '0000' ||child   FIELD_VALUE 
		FROM   V_M_AR1_HIE_02
          where 1=1 
		  and cbu_cod='5000'
          and child  like '2%020' 



задача обращаться к этой view так , что бы она не заходила в лишние union
как подсказать оптимизатору ?
...
Рейтинг: 0 / 0
partition view
    #39321895
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
essbase.ruзадача обращаться к этой view так , что бы она не заходила в лишние union
как подсказать оптимизатору ?Без WHERE - никак.
...
Рейтинг: 0 / 0
partition view
    #39321897
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
essbase.ruкак подсказать оптимизатору ?
Добавить во view константные фильтры на каждую из таблиц.
Было на форуме - и не раз.
...
Рейтинг: 0 / 0
partition view
    #39321902
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elicessbase.ruзадача обращаться к этой view так , что бы она не заходила в лишние union
как подсказать оптимизатору ?Без WHERE - никак.
Ну не то чтобы совсем "никак" (по крайней мере 7 лет тому работало 8087522 ), но с where как-то надежнее.
...
Рейтинг: 0 / 0
partition view
    #39321935
Фотография essbase.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousДобавить во view константные фильтры на каждую из таблиц.

Да спасибо , таким путем и пошел - спрятав подзапрос еще раз
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
SELECT		
		  CBU_COD ,   VIEW_NAME ,   FIELD_NAME ,  FIELD_VALUE   from (				
		SELECT	distinct	
			'5000' AS CBU_COD , 'V_D_LOG_PPED_SL1_01' VIEW_NAME , 'COD_CST_CEN' FIELD_NAME , '0000' ||child   FIELD_VALUE 
		FROM   V_M_AR1_HIE_02
          where 1=1 
		  and cbu_cod='5000'
          and child  like '2%020' 
) where  VIEW_NAME = 'V_D_LOG_PPED_SL1_01' 	

        UNION ALL  
  SELECT		
		  CBU_COD ,   VIEW_NAME ,   FIELD_NAME ,  FIELD_VALUE   from (
			  SELECT		
						'5000' AS CBU_COD , 'V_D_PNL_SD_01' VIEW_NAME , 'COD_PRD_ARE_WW' FIELD_NAME , '40' FIELD_VALUE FROM DUAL			
					UNION ALL
					SELECT		
						'5000' AS CBU_COD , 'V_D_PNL_SD_01' VIEW_NAME , 'COD_PRD_ARE_WW' FIELD_NAME , '96' FIELD_VALUE FROM DUAL
) where  VIEW_NAME = 'V_D_PNL_SD_01' 
...
Рейтинг: 0 / 0
partition view
    #39321957
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
essbase.ruтаким путем и пошел - спрятав подзапрос еще разНе таким. Это просто масло масляное.
...
Рейтинг: 0 / 0
partition view
    #39322164
Фотография essbase.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicНе таким. Это просто масло масляное.
отсюда не виден великий замысел )

"обертка" лишняя ? или что то другое ?
...
Рейтинг: 0 / 0
partition view
    #39322198
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
essbase.ru"обертка" лишняя
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / partition view
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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