Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите написать код в sql !!!!!!!!

Андрей Царапенко Ученик (212), открыт 2 дня назад
Спроектировать базу данных о Студентах (Фамилия, Имя, Отчество, пол, дата рождения, группа, ФИО классного руководителя). Создать запрос для формирования списка студентов заданной группы с указанием классного руководителя, с сортировкой по дате рождения и подсчетом именинников в каждом месяце.
3 ответа
Александр Михеев Мастер (1778) 2 дня назад
https://www.perplexity.ai/search/pomogite-napisat-kod-v-sql-spr-epqQNnhERXSdh8FlAJUOzw
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (267845) 2 дня назад
Access/VBA
 Sub QueryStudentsByGroup() 
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim groupName As String
Dim sql As String

' Задаем имя группы для выборки
groupName = "Группа A" ' Здесь можно указать любую группу

' SQL-запрос для формирования списка студентов с сортировкой и подсчетом
sql = "SELECT Students.LastName, Students.FirstName, Students.MiddleName, " & _
"Students.Gender, Students.DateOfBirth, Groups.GroupName, Teachers.FullName AS ClassTeacher, " & _
"MONTH(Students.DateOfBirth) AS BirthMonth, " & _
"(SELECT COUNT(*) FROM Students AS S WHERE MONTH(S.DateOfBirth) = MONTH(Students.DateOfBirth)) AS BirthdayCount " & _
"FROM (Students " & _
"INNER JOIN Groups ON Students.GroupID = Groups.GroupID) " & _
"INNER JOIN Teachers ON Groups.ClassTeacherID = Teachers.TeacherID " & _
"WHERE Groups.GroupName = '" & groupName & "' " & _
"ORDER BY Students.DateOfBirth;"

' Открываем набор записей
Set db = CurrentDb()
Set rs = db.OpenRecordset(sql, dbOpenSnapshot)

' Вывод результата в окно Immediate (Ctrl+G)
Debug.Print "Список студентов группы: " & groupName
Debug.Print "Фамилия | Имя | Отчество | Пол | Дата рождения | Классный руководитель | Месяц рождения | Именинников в месяце"
Do While Not rs.EOF
Debug.Print rs!LastName & " | " & rs!FirstName & " | " & rs!MiddleName & " | " & rs!Gender & " | " & _
rs!DateOfBirth & " | " & rs!ClassTeacher & " | " & rs!BirthMonth & " | " & rs!BirthdayCount
rs.MoveNext
Loop

' Закрываем набор записей
rs.Close
Set rs = Nothing
Set db = Nothing

MsgBox "Запрос выполнен. Результаты в окне Immediate (Ctrl+G).", vbInformation
End Sub
Result


 
Список студентов группы: Группа A
Фамилия | Имя | Отчество | Пол | Дата рождения | Классный руководитель | Месяц рождения | Именинников в месяце
Смирнов | Алексей | Игоревич | M | 15.04.2003 | Иванов Иван Иванович | 4 | 1
Сидорова | Анна | Владимировна | F | 25.11.2003 | Иванов Иван Иванович | 11 | 1


Чеширский Кот из Страны Чудес Просветленный (38733) 21 час назад
mysql -D students -u root -p < students.sql

Файл students.sql напишешь сам. В Блокноте, npp или редакторе Far Manager
Это простой текстовый файл с командами sql

Что особенно хорошо - при попытке писать в БД он показывает, в какой строке у тебя ошибка синтаксиса. То есть не надо переписывать всё заново, открыл файл и исправил ошибку.

И разумеется файл лучше сразу иметь в кодировке utf-8
Похожие вопросы