powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вопрос на интервью
10 сообщений из 35, страница 2 из 2
Вопрос на интервью
    #39770238
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous,
WHEN T1.CAID THEN coalesce(T2.KMFO, T1.BBID)

T2.KMFO not null?

ELSE не подойдет?

....
stax
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770239
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StaxELSE не подойдет?

Я случайно опубликовал один из размышлизмов.
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770244
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dshedoo,

лично я б OR на UNION ALL не менял (пусть ето делает оптимизатор)

хотя если схема хорошо известна,
то можно и заменить с пониманием что так будет оптимальнее
но сопровождать будет явно посложнее

.....
stax
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770247
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StaxDshedoo,

лично я б OR на UNION ALL не менял (пусть ето делает оптимизатор)

хотя если схема хорошо известна,
то можно и заменить с пониманием что так будет оптимальнее
но сопровождать будет явно посложнее

.....
stax

Это только для оптимизации кейсов.
Как мне кажется, если этот запрос и можно хорошо оптимизировать, то только через UNION.
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770258
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DshedooКак мне кажется, если этот запрос и можно хорошо оптимизировать, то только через UNION.
1. Оптимизация невозможна без конкретной цели и конкретного окружения.
2. Если, к примеру, цель - сокращение dbtime и нагрузки на IO указанного запроса, в table1 триллион записей и предикат "CAID = 111111" низкоселективен, то идея организации двойного прохода по table1 покажется слегка неумной.
3. Ваш вариант union all не эквиваленте исходному запросу.
4. Когда сделаете эквивалентным - рассмотрите случай CAID=DAID=111111

Можно перевести case expression из searched в simple - это несколько сократит издержки и упростит текст почти безотносительно к прочим факторам при условии, что соответствующие атрибуты TABLE2 not null - иначе simple форма становится неудобочитаемой.

Остальное - только "по месту".
К примеру, на решение повлияет возможность ситуации CAID=DAID=111111, соотношение мощностей DAID=111111 и (CAID=111111 and DAID<>111111), наличие индексов, доступный объем памяти и т.д.
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770269
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous3. Ваш вариант union all не эквиваленте исходному запросу.
4. Когда сделаете эквивалентным - рассмотрите случай CAID=DAID=111111

3. Можете, конечно, убрать из первого запроса условие по дате, сути это не изменит.
4. Он рассмотрен.

Остальное из разряда "трава зелёная, а небо голубое".
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770275
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DshedooЭто только для оптимизации кейсов.
Как мне кажется, если этот запрос и можно хорошо оптимизировать, то только через UNION.
может ето и имели ввиду хозяева, хз

на собеседовании обычно волнуешся, и я б сразу не додул до union all

зы
я при ручной замене OR на UNION ALL іспользовал LNNVL

зии
интересно что предложил w31 и пошел ли он тест
....
stax
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770290
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dshedoo4. Он рассмотрен.

Остальное из разряда "трава зелёная, а небо голубое".
4.1 DAID = null, CAID = 111111

"остальное" - печальная правда жизни.
Нельзя оптимизировать сферического коня по неопределенному критерию, любое конкретное предложение будет встречено контраргументом.
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770296
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousDshedoo4. Он рассмотрен.

Остальное из разряда "трава зелёная, а небо голубое".
4.1 DAID = null, CAID = 111111

"остальное" - печальная правда жизни.
Нельзя оптимизировать сферического коня по неопределенному критерию, любое конкретное предложение будет встречено контраргументом.

4.1. Вы правы.
Тогда, как Stax написал выше, необходим LNNVL.
...
Рейтинг: 0 / 0
Вопрос на интервью
    #39770310
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stax и пошел ли он тест
для теста запрос перегружен лишними символами и не имеет осмысленного решения.
Неоднозначность хороша только для дискуссии, а дискуссия предполагает листок и собеседника. Вряд ли автор набирал это с листка.
...
Рейтинг: 0 / 0
10 сообщений из 35, страница 2 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вопрос на интервью
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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