From 8d1f215ff50155e3904ee0771783390a2ddc84c8 Mon Sep 17 00:00:00 2001 From: nik Date: Wed, 22 Oct 2025 10:22:25 +0300 Subject: [PATCH] started lab2 --- labs/lab2/report.pdf | Bin 0 -> 47720 bytes labs/lab2/report.typ | 121 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 labs/lab2/report.pdf create mode 100644 labs/lab2/report.typ diff --git a/labs/lab2/report.pdf b/labs/lab2/report.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ddd9b3c5b18452bd8fc3715af0e45dd4e2b31d13 GIT binary patch literal 47720 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 Q3Q31dA&4(rXli5jKP22ovH$=8 literal 0 HcmV?d00001 diff --git a/labs/lab2/report.typ b/labs/lab2/report.typ new file mode 100644 index 0000000..940f5df --- /dev/null +++ b/labs/lab2/report.typ @@ -0,0 +1,121 @@ +#show link: underline +#set page( + header: context { + if counter(page).get().first() == 1 [ + #align(center)[ + Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики + ] + ] + }, + footer: context { + if counter(page).get().first() == 1 [ + #align(center)[Санкт-Петербург \ 2025] + ] else [ + #align(center)[#counter(page).display("1")] + ] + } +) + + +#show raw.where(block: false): box.with( + fill: luma(240), + inset: (x: 3pt, y: 0pt), + outset: (y: 3pt), + radius: 2pt, +) + +#show raw.where(block: true): block.with( + fill: luma(240), + inset: 10pt, + radius: 4pt, +) + +// title + +\ +\ +\ +#align(center)[Факультет инфокоммуникационных технологий] +#align(center)[Направление подготовки 11.03.02] +\ +\ +#align(center)[Практическая работа №2] +//#align(center)[Установка и первоначальная настройка субд postgresql.] +\ +\ +\ +\ //#align(center)[Вариант 19] +\ +\ +\ +\ +\ +\ +\ +#align(right)[Выполнил:] +#align(right)[Дощенников Никита Андреевич] +#align(right)[Группа: К3221] +#align(right)[Проверила:] +#align(right)[Татьяна Евгеньевна Войтюк] +\ +\ + +#pagebreak() + +=== Цель работы + +=== Задачи, решаемые при выполнении работы + +=== Исходные данные + +==== Задание 1. Описание структуры таблицы, выборка данных из таблицы, задание имен столбцов, сортировка строк с помощью предложения ORDER BY + +===== 1.1 Будет ли успешна эта команда `SELECT`? + +```sql +SELECT * +FROM "EmployeesDepartments".JOB_GRADES; +``` + +===== 1.2 Команда SELECT содержит 4 ошибки. Укажите их. + +```sql +SELECT "EMPLOYEE_ID", "LAST_NAME" +"SAL" x 12 ANNUAL SALARY +FROM "EmployeesDepartments"."EMPLOYEES" +``` + +===== 1.3 Напишите запрос, который отображает структуру таблицы `DEPARTMENTS`, представленную на таблице 1. Сформируйте запрос на выборку данных из нее, результат должен соответствовать таблице 2. + +#align(center)[ + #figure( + table(columns: 3)[*column_name*][*is_nullable*][*Type*][DEPARTMENT_ID][NO][smallint][DEPARTMENT_NAME][NO][character varying][MANAGER_ID][YES][integer][LOCATION_ID][YES][smallint], + caption: [Структура таблицы `DEPARTMENTS`.], + supplement: [Табл.] + ) +] + +#align(center)[ + #figure( + table(columns: 4)[*DEPARTMENT_ID*][*DEPARTMENT_NAME*][*MANAGER_ID*][*LOCATION_ID*][10][Administration][200][1700][20][Marketing][201][1800][50][Shipping][124][1500][60][IT][103][1400][80][Sales - Europe][149][2500][85][Sales - Americas][149][2100][90][Executive][100][1700][110][Accounting][205][1700][190][Contracting][][1700], + caption: [Результат выполнения запроса к таблице `DEPARTMENTS`.], + supplement: [Табл.] + ) +] + +===== 1.4 Напишите запрос, который отображает структуру таблицы `EMPLOYEES`, представленную в таблице 3. + +#align(center)[ + #figure( + table(columns: 3)[*Name*][*Null?*][*Type*][HIRE_DATE][NO][date][SALARY][YES][numeric][COMMISION_PCT][YES][numeric][MANAGER_ID][YES][integer][DEPARTMENT_ID][YES][smallint][EMPLOYEE_ID][NO][integer][BONUS][YES][character varying][FIRST_NAME][YES][character varying][LAST_NAME][NO][character varying][EMAIL][NO][character varying][PHONE_NUMBER][YES][character varying][JOB_ID][NO][character varying], + caption: [Результат выполнения запроса к таблице `DEPARTMENTS`.], + supplement: [Табл.] + ) +] + + + +=== Выполнение работы + +=== Выводы и анализ результатов работы +