Данный набор квалификационных заданий и решений позволит вам разобраться с требованиями и возможно успешно пройти испытания на должность программиста SQL Server. Решения даны в 6 пакетных файлах в формате Microsoft SQL Server, т.к. 6 решение необычно и будет понятно вам после решения 5 заданий. Шпаргалка или предварительное решение 1 начинается на этой странице Решение 1
Товар или услуга |
|
0098-46 |
Набор квалификационных заданий и решений по SQL Server 6 решений в формате sql |
|
1. Создать таблицу справочник месторождений
- Код месторождения (целый числовой)
- Широта (десятичные градусы, -pi/2 >= широта <= pi/2)
- Долгота (десятичные градусы, 0 >= долгота <= 2*pi)
- Зона (целый числовой, вычисляемые поле, Зона = div(Долгота/6) + 1)
- Наименование месторождения (уникальное текстовое, до 50 знаков)
- Система координат (Талнахская, Норильская; необязательное поле, предусмотреть возможность добавление новых систем координат)
- Дата ввода \ обновления
- Компьютер пользователя, выполнившего операцию
Примечание. Последние 2 поля должны обновляться в триггере с использованием системных функций. (предоставить скрипт создания таблицы, триггера) Заполнить таблицу данными (предоставить скрипт с командами ввода данных)
2. Создать таблицу описания скважин
- Код скважины (уникальное текстовое, до 20 символов),
- Код месторождения (связать со справочником месторождений)
- Дата начала бурения скважины ( не ранее 1950 и не позднее текущего года, по умолчанию: текущая дата)
- Дата окончания бурения скважины ( не ранее 1950 и не позднее текущего года)
- Глубина скважины фактическая (положительное число до двух знаков после запятой, не более 2000 метров)
Примечание. Формат: ББ-0000бббб (необязательные: 2 заглавных русских буквы и тире, обязательные: 4 цифры, далее любые строчные буквы и цифры). Например: ОМ-0023бис, 0023, 0023бис, М-0023клин1 Алгоритм проверки реализовать в отдельной функции. В триггере при вводе и редактировании проверять формат скважины, если не подходит, то по возможности корректировать. Например: 8 -> 0008, 80бис -> 0080бис, с-80->С-0080,СС80->СС-0080, С80->С-0080. В остальных случаях – сообщение об ошибке, операцию отменять. (предоставить скрипт создания таблицы, триггера) Заполнить таблицу произвольными данными (предоставить скрипт с командами ввода данных)
3. Создать таблицу - справочник классов содержаний химических элементов
Таблица должна содержать следующие классы содержаний (min – max, формат хранения данных выбираете самостоятельно ):
- 0.00005-0.001
- 0.001-0.005
- 0.005 – 0.01
- 0.01 -0.5
- 0.5- 1
- 1-10
- 10-50
- 50-100
Примечание. (предоставить скрипт создания таблицы и заполнения)
4. Создать таблицу результатов химических анализов
- Код скважины (должен обязательно присутствовать в таблице описания скважины)
- Глубина (число до двух знаков после запятой, не может быть больше фактической глубины скважины из таблицы описания, проверять в триггере при вводе и редактировании)
- содержание Ni (null или 0.00001-100%, число до 5 знаков после запятой)
- содержание Cu (null или 0.00001-100%, число до 5 знаков после запятой)
- содержание Pt (null или 0.00001-100%, число до 5 знаков после запятой)
- содержание Pd (null или 0.00001-100%, число до 5 знаков после запятой)
Примечание. Первые два поля уникальны, т.е. для одной скважины может быть несколько глубин с разными результатами анализов. (предоставить скрипт создания таблицы, триггера и заполнения)
5. Создать хранимую процедуру
Входные параметры :
- период бурения (даты от-до),
- код месторождения
Выход. Кол-во проб по элементам в каждом классе содержания за выбранный период бурения по месторождению (пустые классы не выводить, использовать связь со справочником классов). Выходной результат должен быть пронумерован, классы отсортированы по возрастанию. Результат процедуры выводится только на экран в SQL Server Management Studio, сохранять в какую-либо таблицу НЕ НАДО! Без использования временных таблиц!
Пример выходных данных.
Номер по порядку класс кол-во проб Ni кол-во проб Cu кол-во проб Pt кол-во проб Pd
1 0.00005-0.001 3 4 8 0
2 0.005-0.01 3 0 8 0
3 0.5-1 0 0 8 0
4 1-10 0 0 1 1
Примечание. Предоставить скрипт создания процедуры, пример использования : входные данные , результат