Помогите написать SQL запрос

Статус: Offline
Реєстрація: 06.10.2010
Повідом.: 20
Помогите написать SQL запрос

Только начинаю разбираться с MSSQL server, не успеваю справиться со всеми заданиями, помогите хотябы с одним(запросом), кто сможет, :пиво:
Исходные данные:
связанные по id таблицы Students(id, name) и Results(id,subject,mark), содержащих данные о студентах

Необходимо написать запрос, который вернет список фамилий студентов и их средний балл, причем для студентов, еще не имеющих оценок, средний балл равен 0.
Необходимо привести 2 разных SQL-запроса для решения этой задачи.
 
а если хотя бы попробовать подумать? а если сначала почитать методический материал к лабе и снова подумать?
 
чтото типа:

mysql_query ("SELECT * FROM "id", "name" ORDER BY `mark` DESC LIMIT 100500 ",Students) or die(mysql_error());

Но не ври нам первед, ты даже не начинала разбиратся и не прочитала вообще ничего. Если не знаешь даже как сделать простую выборку из таблицы.
 
Только начинаю разбираться с MSSQL server, не успеваю справиться со всеми заданиями, помогите хотябы с одним(запросом), кто сможет, :пиво:
Исходные данные:
связанные по id таблицы Students(id, name) и Results(id,subject,mark), содержащих данные о студентах

Необходимо написать запрос, который вернет список фамилий студентов и их средний балл, причем для студентов, еще не имеющих оценок, средний балл равен 0.
Необходимо привести 2 разных SQL-запроса для решения этой задачи.

1) для связывания таблиц используй LEFT JOIN
2) для подсчета среднего используй функцию AVG
3) для

причем для студентов, еще не имеющих оценок, средний балл равен 0.

Используй функцию CASE
Тільки зареєстровані користувачі бачать весь контент у цьому розділі


че тут непонятного то? )

Но не ври нам первед, ты даже не начинала разбиратся и не прочитала вообще ничего. Если не знаешь даже как сделать простую выборку из таблицы.

+мильен

Только начинаю разбираться с MSSQL server, не успеваю справиться со всеми заданиями

а потом такие программисты напишут адын-цэ, не такое надо пресекать в зародыше :)
 
чтото типа:

mysql_query ("SELECT * FROM "id", "name" ORDER BY `mark` DESC LIMIT 100500 ",Students) or die(mysql_error());

Но не ври нам первед, ты даже не начинала разбиратся и не прочитала вообще ничего. Если не знаешь даже как сделать простую выборку из таблицы.

И ты не ври!
В чужом коде я уже знаю как находить ошибки :пиво:

а потом такие программисты напишут адын-цэ, не такое надо пресекать в зародыше :)

не не, я совсем не программыст, не такое вы пытаетесь пресечь

ну всё равно спасибо, товарищи :клас::пиво:
 
Код:
select st.id as studentID
     , st.name as studentName
     , coalesce(avg(res.mark), 0) as averageMark
  from students st
     , results res
 where st.id = res.studentsID(+)
 group by st.id
        , st.name
 
А так вторым вариантом пойдёт?

Собственно за такой запрос хочется взять и написать, что это хуйня какая-то а-ля "SELECT * FROM "id", "name" ORDER BY `mark` DESC LIMIT 100500". Если хочешь уметь составлять SQL запросы, то хоть почитай теорию и не мучай жопу.
 
Собственно за такой запрос хочется взять и написать, что это хуйня какая-то а-ля "SELECT * FROM "id", "name" ORDER BY `mark` DESC LIMIT 100500". Если хочешь уметь составлять SQL запросы, то хоть почитай теорию и не мучай жопу.
Собственно почитала и такой результат получился, тока читать и составлять это есть 2 большие разницы
и жопу ничью я не мучаю , спросила просто :rolleyes:
 
Нужно понимать, чтобы уметь читать и писать. А понимания у тебя ноль.
 
чтобы уметь писать и читать достаточно иметь глазки и ручки,
а чтобы понимать нужно мне объяснить где ошибки
а чтобы хорошо объяснить нужно очень хорошо понимать
 
чтобы уметь писать и читать достаточно иметь глазки и ручки,
а чтобы понимать нужно мне объяснить где ошибки
а чтобы хорошо объяснить нужно очень хорошо понимать

Я так понимаю, что ты в голову ешь и тебе все обязаны.
 
Я так понимаю, что ты в голову ешь и тебе все обязаны.
я ещё из неё пою....
ну обязаны, но не все, и вообще по-моему обсуждение уже переходит в непонятный диалог хамского характера, я просто хочу разобраться и спрашиваю как мне исправить ошибки, вот и всё;
в чём то я разбираюсь и помогаю другим, а в чём-то мне требуется помощь!
 
Та не парься ты за этого мудака, сам учился в ХНУРЭ, знаю доуя программеров, есть пидорги-задроты, типа тех шо тебе отвечали, ну большая часть)))) А есть норм пацики, которые помогают и им пох че ты там знаешь, а че нет))))) Так что посылай всех задротов смело на йух!!!!)))) Просто они все думают что круче них тока я йца, а попроси сигаретку вечерком когда стемнеет штаны пообсыкают)))))
 
Подойди ко мне вечерком, спроси сигаретку. Получишь незабываемые ощущения.
 
Брэк ребята! Устроили в теме хто зна шо!
Курить вредно, лучше подойти и спросить как написать скьюэль запрос.
 
Брэк ребята! Устроили в теме хто зна шо!
Курить вредно, лучше подойти и спросить как написать скьюэль запрос.

тебе ж уже писали

https://www.kharkovforum.com/showpost.php?p=15361707&postcount=7

я тебе кидал
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
на функцию CASE. просто в запросе замени ее на другие аналогичные, к примеру CASE,NULLIF,COALESCE - тут аж 3 (три!) запроса можна написать. а если творчески помыслить и поизвращаться можна изменить порядок аргументов в Select, джойне и тд
то есть 10 запросов написать не напрягаясь )))

есть кстати форум sql.ru - там как раз добрые фанаты sql и в частности t-sql обитают Ж)

Тільки зареєстровані користувачі бачать весь контент у цьому розділі


вот кстати описываются джойны в ms sql, то есть ты можешь использовать JOIN ( как написал AS0kol), LEFT OUTER JOIN, RIGHT OUTER JOIN. Вобщем куча вариантов :) штук 10 запросов можна написать )))

не не, я совсем не программыст

так зачем тебе ms sql? колбасой зачет сдай :)

PS все из-за твоей авы, надо было цеплять красивую телачку на аву, мож кто авансом два запроса и написал бы ))
 
Назад
Зверху Знизу