Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3159703
А
Аноним
30 апреля 2025 19:26 · публичный вопрос
А
Аноним

С помощью конструктора запросов или языка SQL, создать следующие запросы в БД «Электронный журнал» Запрос на отображение всех студентов группы 1-Т Запрос на отображение всех…

Запрос пользователя

С помощью конструктора запросов или языка SQL, создать следующие запросы в БД «Электронный журнал» Запрос на отображение всех студентов группы 1-Т Запрос на отображение всех студентов группы 2-Т Запрос на отображение всех студентов группы 3-Т Запрос на отображение всех студентов группы 4-Т Перекрёстный запрос на отображение кол-ва оценок по каждой группе. Параметрический запрос для отображения всех пятёрок по выбранному студенту по определённой дисциплине Параметрический запрос для отображения всех четвёрок по выбранному студенту по определённой дисциплине Параметрический запрос для отображения всех троек по выбранному студенту по определённой дисциплине Параметрический запрос на отображение оценок по дате Запрос на добавление студента Запрос на обновление студента Запрос на удаление студента Запрос на добавление группы Запрос на обновление группы Запрос на удаление группы

Ответ нейросети
30 апреля 2025 19:26

Конечно! Ниже приведены примерные SQL-запросы для работы с базой данных «Электронный журнал». Предположим, что структура таблиц примерно следующая:

  • Students (id, name, group_id)
  • Groups (id, name)
  • Marks (id, student_id, subject, grade, date)

Если структура отличается, можно корректировать запросы. В случае необходимости уточнения — скажите.


1. Запрос на отображение всех студентов группы 1-Т

SELECT * FROM Students
WHERE group_id = (SELECT id FROM Groups WHERE name = '1-Т');

2. Запрос на отображение всех студентов группы 2-Т

SELECT * FROM Students
WHERE group_id = (SELECT id FROM Groups WHERE name = '2-Т');

3. Запрос на отображение всех студентов группы 3-Т

SELECT * FROM Students
WHERE group_id = (SELECT id FROM Groups WHERE name = '3-Т');

4. Запрос на отображение всех студентов группы 4-Т

SELECT * FROM Students
WHERE group_id = (SELECT id FROM Groups WHERE name = '4-Т');

5. Перекрёстный запрос на отображение количества оценок по каждой группе

SELECT g.name AS GroupName, COUNT(m.id) AS NumberOfGrades
FROM Groups g
JOIN Students s ON s.group_id = g.id
JOIN Marks m ON m.student_id = s.id
GROUP BY g.name;

6. Параметрический запрос для отображения всех пятёрок по выбранному студенту по определённой дисциплине

-- параметры: @StudentID, @Subject
SELECT * FROM Marks
WHERE student_id = @StudentID AND subject = @Subject AND grade = 5;

Пример заполнения параметров:
@StudentID – ID интересующего студента,
@Subject – название предмета.


7. Аналогично для четвёрок

-- параметры: @StudentID, @Subject
SELECT * FROM Marks
WHERE student_id = @StudentID AND subject = @Subject AND grade = 4;

8. Аналогично для троек

-- параметры: @StudentID, @Subject
SELECT * FROM Marks
WHERE student_id = @StudentID AND subject = @Subject AND grade = 3;

9. Параметрический запрос на отображение оценок по дате

-- параметры: @Date
SELECT * FROM Marks
WHERE date = @Date;

10. Запрос на добавление студента

INSERT INTO Students (name, group_id)
VALUES ('Имя студента', (SELECT id FROM Groups WHERE name = 'Название группы'));

11. Запрос на обновление студента

-- параметры: @StudentID, @NewName, @NewGroupName
UPDATE Students
SET name = @NewName,
    group_id = (SELECT id FROM Groups WHERE name = @NewGroupName)
WHERE id = @StudentID;

12. Запрос на удаление студента

-- параметры: @StudentID
DELETE FROM Students WHERE id = @StudentID;

13. Запрос на добавление группы

INSERT INTO Groups (name)
VALUES ('Название группы');

14. Запрос на обновление группы

-- параметры: @GroupID, @NewName
UPDATE Groups
SET name = @NewName
WHERE id = @GroupID;

15. Запрос на удаление группы

-- параметры: @GroupID
DELETE FROM Groups WHERE id = @GroupID;

Если потребуется более точная структура таблиц или дополнительные условия — дайте знать!