Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите сделать запросы в готовой базе данных / 25 сообщений из 27, страница 1 из 2
29.03.2020, 15:31
    #39942028
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
https://dropmefiles.com/CaqfJ ссылка на базу данных
1. Вывести фамилии преподавателей, которые поставили хотя бы одну двойку.
2. Вывести название предметов, средняя оценка по которым выше 3.
3. Вывести фамилии студентов, у которых имеются оценки 3 и 4 (одновременно).
4. Вывести фамилии студентов, которые получили хотя бы одну оценку, выше средней.
5. Вывести названия групп, в которых обучается 6 студентов.
Вот эти запросы надо выполнить
Сдавать завтра.
Заранее благодорю
...
Рейтинг: 0 / 0
29.03.2020, 16:13
    #39942032
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka,
Судя по заданию, запросы простые, для начинающих.
Варианта два:
1. Что делали, как делали, что не получилось, с какими ошибками столкнулись, ход мыслей и т.д.
2. Тут есть раздел "Работа", там за деньги помогают студентам, дотянувшим до последнего.
...
Рейтинг: 0 / 0
29.03.2020, 16:48
    #39942036
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Первый запрос я сделал вроде как. А вот с последующими возникли непонимания как правильно построить запрос
SELECT `nazvanie` FROM `dischiplina` WHERE AVG(`ocenka`)>3 in (SELECT `ocenka` FROM `uspev` WHERE `kod_disciplina`=`dischiplina`.`kod_dischiplina`)
вот что я сделал но выбило ошибочку
...
Рейтинг: 0 / 0
29.03.2020, 17:28
    #39942043
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
AVG(`ocenka`)>3
вот что я сделал но выбило ошибочку
Что образуется в результате выполнения выражения AVG(`ocenka`)>3 ? И, соответственно, что вы пытаетесь впихнуть посредством IN? Отсюда и ошибка.

Используйте тэги SRC -> T-SQL, это повышает читабельность:

Код: sql
1.
2.
3.
SELECT `nazvanie` FROM `dischiplina` 
WHERE AVG(`ocenka`)>3 in 
     (SELECT `ocenka` FROM `uspev` WHERE `kod_disciplina`=`dischiplina`.`kod_dischiplina`)


1. Выбор делаете из таблицы uspev, а не dischiplina.
2. Надо использовать LEFT JOIN, чтобы вывести названия из таблицы dischiplina.

Действуйте.
...
Рейтинг: 0 / 0
29.03.2020, 19:00
    #39942055
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
SELECT nazvanie FROM dischiplina WHERE kod_dischiplina IN (SELECT AVG(ocenka)>3 from uspev WHERE kod_dischiplina=uspev.kod_dischiplina)
Сделал вот так вроде заработало.
Опять же столкнулся с проблеммой в 3 запросе немогу вывесте так что бы одновременно у студента была и 3 и 4ка, выводится только либо те у кого 3 либо те у кого 4
SELECT fam FROM dannie WHERE kod_student IN (SELECT kod_student FROM uspev where ocenka='3') а что ещё дописать что правильно выводило незнаю
...
Рейтинг: 0 / 0
29.03.2020, 19:23
    #39942060
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
Сделал вот так вроде заработало.
Опять же столкнулся с проблеммой в 3 запросе немогу вывесте так что бы одновременно у студента была и 3 и 4ка, выводится только либо те у кого 3 либо те у кого 4
SELECT fam FROM dannie WHERE kod_student IN (SELECT kod_student FROM uspev where ocenka='3') а что ещё дописать что правильно выводило незнаю
Тэги подсветки синтаксиса религия использовать не позволяет или что?
Код: sql
1.
2.
3.
SELECT fam FROM dannie 
WHERE kod_student IN
              (SELECT kod_student FROM uspev where ocenka='3') 


Давайте все-таки двигаться в сторону джойнов:
Код: sql
1.
2.
3.
4.
SELECT u.kod_student, d.fam 
FROM uspev u
      LEFT JOIN dannie d ON u.kod_student = d.kod_student
WHERE u.ocenka = 3 AND u.ocenka = 4


Кстати,
Код: sql
1.
2.
CREATE TABLE IF NOT EXISTS `uspev` (
  `ocenka` int(11) NOT NULL,

а зачем вам int(11) для хранения оценки, которая не больше 5 может быть, насколько я в курсе?
...
Рейтинг: 0 / 0
29.03.2020, 19:28
    #39942061
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Извенияюсь что без подсветки я не шарю как это делать на подобных форумах впервые
...
Рейтинг: 0 / 0
29.03.2020, 19:29
    #39942062
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Join я использовать не могу так как он только в следующей лабороторке в этой его нельзя использовать
...
Рейтинг: 0 / 0
29.03.2020, 19:32
    #39942063
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
как то так получилось
...
Рейтинг: 0 / 0
29.03.2020, 19:39
    #39942066
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka,
Понятно, нужно было тогда сразу пояснить, что есть ограничения на конструкции запроса.

Подсветка делается кнопками сразу под смайликами. Выделяем текст запроса и нажимаем |SRC| > |sql|.
...
Рейтинг: 0 / 0
29.03.2020, 19:46
    #39942067
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Вывести фамилии студентов, которые получили хотя бы одну оценку, выше средней
Код: sql
1.
SELECT fam FROM dannie WHERE kod_student in (SELECT AVG(Ocenka)>3 from uspev WHERE kod_student=uspev.kod_student)


но не выводятся значения просто пустой запрос минут 10 по гуглу ищу как вывести выше средних, но везде слишком сложное пояснение непонятное мне как пользователю с опытом в 1 день
...
Рейтинг: 0 / 0
29.03.2020, 19:49
    #39942069
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
как то так получилось
код
Код: sql
1.
ocenka IN (3, 4)

предполагает, что ocenka или 3 или 4. А у вас в условии написано "одновременно". То есть надо выбрать тех студентов, у которых и 3, и 4 сразу.
Например, у вас студент "Марус" имеет оценки (2, 3, 2), т.е. 4 нет вообще, а в списке он есть.

Не справились с третьим заданием.
...
Рейтинг: 0 / 0
29.03.2020, 20:00
    #39942072
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
так а как сделать что бы одновременно что бы справится))
...
Рейтинг: 0 / 0
29.03.2020, 20:08
    #39942075
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
но не выводятся значения просто пустой запрос
Давайте от печки. Можете сформулировать, что происходит, когда вы используете в запросе оператор IN ? Что слева от него, а что справа и как эти две части связаны?
Код: sql
1.
AVG(Ocenka) > 3

Вы вычисляете среднюю оценку студента. У вас после SELECT используется агрегатная функция, т.е. запрос всегда выдает 1 запись (в лучшем случае, в частном ничего).
А в условии у вас написано: "Вывести фамилии студентов, которые получили хотя бы одну оценку, выше средней". Т.е. вам надо не среднее арифметическое оценок студента вычислять, а сравнивать его оценки с некоей средней оценкой (например, с тройкой, или я не знаю, какая у вас там средняя оценка). Или если под средней оценкой имеется в виду средняя оценка всех студентов, то нужно взять её.
...
Рейтинг: 0 / 0
29.03.2020, 20:11
    #39942076
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
так а как сделать что бы одновременно что бы справится))
Я же готовый запрос написал уже, см. выше. Он с джойнами, так не смотрите на джойны. 22107709
...
Рейтинг: 0 / 0
29.03.2020, 20:11
    #39942077
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
ладно, для меня это сложно я ничего не понял из вашего последнего ответа)
можете не тратить время на меня сдам как есть. Так как понять мой мозг не в силах, весь день этим занимаюсь, голова кипит.
Спасибо за помощь
...
Рейтинг: 0 / 0
29.03.2020, 20:13
    #39942078
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
он не выводит данные только пусты столбы
...
Рейтинг: 0 / 0
29.03.2020, 20:33
    #39942083
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka,
(3)
Код: sql
1.
2.
3.
SELECT fam FROM dannie 
WHERE kod_student IN
              (SELECT kod_student FROM uspev where (ocenka = 3) AND (ocenka = 4))


(4)
Код: sql
1.
2.
3.
SELECT fam FROM dannie 
WHERE kod_student IN
              (SELECT kod_student FROM uspev where ocenka > AVG(ocenka))


(5)
Половина запроса на подумать:
Код: sql
1.
2.
SELECT kod_gruppy, COUNT(*) AS kolvo_studentov FROM dannie 
GROUP BY kod_gruppy
...
Рейтинг: 0 / 0
29.03.2020, 22:14
    #39942100
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
3 и 4 запрос у меня не сработали в 3 нет данных в 4 ошибка, 5 вывел значение, за всё спасибо. Позже попробую покрутить запросы, может выстрелит
...
Рейтинг: 0 / 0
30.03.2020, 01:09
    #39942125
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
3 и 4 запрос у меня не сработали в 3 нет данных в 4 ошибка, 5 вывел значение, за всё спасибо. Позже попробую покрутить запросы, может выстрелит
Это я уже напился и какой-то бред стал сочинять.
(3) Тут простого (на том уровне лабораторной) решения нет, по крайней мере, мне оно в голову не приходит, поэтому оставляем некорректный вариант.
Код: sql
1.
2.
3.
SELECT fam FROM dannie 
WHERE kod_student IN
              (SELECT kod_student FROM uspev where ocenka IN (3, 4))


(4) Сейчас должно быть без ошибок.
Код: sql
1.
2.
3.
SELECT fam FROM dannie 
WHERE kod_student IN
              (SELECT kod_student FROM uspev where ocenka > (SELECT AVG(ocenka) FROM uspev))
...
Рейтинг: 0 / 0
30.03.2020, 12:40
    #39942208
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Спасибо
...
Рейтинг: 0 / 0
31.03.2020, 22:06
    #39942681
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
1. Вывести названия регионов и соответствующие названия городов.
2. Вывести перечень специальностей и название групп.
3. Вывести названия дисциплин, по которым студенты получили 5.
4. Вывести фамилии преподавателей, поставивших 3.
5. Вывести фамилии студентов и названия соответствующих улиц.
6. Вывести фамилии студентов и названия соответствующих городов.
7. Вывести фамилии студентов и названия соответствующих регионов.
8. Вывести информацию о студентах и их родителях.
Вот преподаватель дал новые задания
Первые 4 я сделал, дальше я не могу представить в голове запрос, всё ошибки выбивает
...
Рейтинг: 0 / 0
31.03.2020, 22:16
    #39942684
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Gluck99,

Код: sql
1.
Select region.nazvanie, gorod.nazvanie from region, gorod where region.kod_region=gorod.kod_region

--- 1
Код: sql
1.
Select dischiplina.nazvanie, gruppa.nazvanie from dischiplina, gruppa where dischiplina.kod_dischiplina=gruppa.kod_spec

--- 2
Код: sql
1.
Select nazvanie from dischiplina join uspev on (dischiplina.kod_dischiplina=uspev.kod_dischiplina) and (uspev.oceka=5)

--- 3
Код: sql
1.
select fio_prepod from prepod join uspev on (prepod.kod_prepod = uspev.kod_prepod) and (uspev.ocenka=3)

--- 4
Код: sql
1.
select dannie.fam, ulica.nazvanie from dannie, ulica where dannie.kod_ulica=ulica.kod_ulica

--- 5
Вот так я первые 5 сделал
...
Рейтинг: 0 / 0
01.04.2020, 07:29
    #39942735
Gluck99
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Lixoradka
Вот так я первые 5 сделал
Так а остальные задачи вроде особо от первых пяти не отличаются. Постите сюда ошибочные запросы, посмотрим.
...
Рейтинг: 0 / 0
01.04.2020, 15:24
    #39942878
Lixoradka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите сделать запросы в готовой базе данных
Gluck99,

Код: sql
1.
SELECT dannie.fam, gorod.nazvanie from dannie, gorod where 


ну вот как начинаю, а что дальше впихнуть что бы у меня показало одновременно и фамилии и города соответствующие друг другу
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите сделать запросы в готовой базе данных / 25 сообщений из 27, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]