Имеется таблица MyTable в базе данных Oracle, несколько миллионов записей, в таблице два поля:
1. 'id' number, (primary key)
2. 'depozit' varchar2
Изменять структуру таблицы нельзя.
В сторонней системе (не родной для этой базы данных) имеется прослойка, которая генерирует запросы к этой талице, используя в WHERE только тип GUID:
SELECT * FROM MyTable WHERE Id_GUID='00000001-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
SELECT * FROM MyTable WHERE Id_GUID='00000002-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
SELECT * FROM MyTable WHERE Id_GUID='00000003-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
...
Проблема в том, что в системе Id_GUID это длинный текст, а в таблице Id целочисленный. Изменить формат запроса нельзя, можно только поменять имя таблицы на другое, или на VIEW.
Можно сделать VIEW:
CREATE VIEW MyView ( Id_GUID, Depozit ) AS
SELECT
to_char( id, '00000000' ) || '-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ' AS id_GUID,
depozit AS depozit
FROM MyTable;
Тогда запросы работают:
SELECT * FROM MyView WHERE Id_GUID='00000001-ХХХ-ХХХХ-ХХХ...
Видеть полную информацию и оставлять заявки могут только авторизованные пользователи.
Заявок нет
Оставлять заявки могут только авторизованные пользователи.
Задачка по Oracle SQL
Реклама
Задачка по Oracle SQL
Имеется таблица MyTable в базе данных Oracle, несколько миллионов записей, в таблице два поля:
1. 'id' number, (primary key)
2. 'depozit' varchar2
Изменять структуру таблицы нельзя.
В сторонней системе (не родной для этой базы данных) имеется прослойка, которая генерирует запросы к этой талице, используя в WHERE только тип GUID:
SELECT * FROM MyTable WHERE Id_GUID='00000001-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
SELECT * FROM MyTable WHERE Id_GUID='00000002-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
SELECT * FROM MyTable WHERE Id_GUID='00000003-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ';
...
Проблема в том, что в системе Id_GUID это длинный текст, а в таблице Id целочисленный. Изменить формат запроса нельзя, можно только поменять имя таблицы на другое, или на VIEW.
Можно сделать VIEW:
CREATE VIEW MyView ( Id_GUID, Depozit ) AS
SELECT
to_char( id, '00000000' ) || '-ХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХ' AS id_GUID,
depozit AS depozit
FROM MyTable;
Тогда запросы работают:
SELECT * FROM MyView WHERE Id_GUID='00000001-ХХХ-ХХХХ-ХХХ...
Другие открытые задания:
Дизайн логотип12 000 р.
Бюджет: 12 000 р. Сделать фирстиль для компании в таком стиле Пожалуйста присылайте свое портфолио сразу, нужен кто умеет в современный дизайн * Логотип на разных фонах (на под…
Веб-мастер нужен срочно .Партнерская программа.20 000 р.
Бюджет: 20 000 р. Веб-мастер нужен срочно .Партнерская программа. Стоимость : 20 000рублей Срок выполнения : 60 дней Описание проекта : Меня зовут Олег и я занимаюсь произ…
Менеджер по поиску сотрудников для рассылки сообщений в ватсап15 000 р.
Бюджет: 15 000 р. Что нужно делать: Искать сотрудников (рассыльщиков в ватсап) через Telegram-чаты, комментарии под постами в каналах, а также другие бесплатные площадки. Общаться …
поиск заданий