2014-10-10 3 views
-2

у меня есть две таблицы один студент, а другой класс:Пожалуйста, помогите мне написать запрос на эти вопросы

Первая таблица имеет следующие столбцы идентификатор, знаки, ClassID, studentname

данные первой таблицы выглядит следующим образом:

id  1  2  3  4 
marks 200  250  300  298 
classid 2  2  1  3 
studentname Vikas Anil Ravil Rahul 

другая таблица имеет следующие столбцы идентификатор, имя_класс

Данные другой таблицы выглядит следующим образом:

id   1  2 3 4 
classname BCA MCA BA BCA 

теперь вопрос в том, что

  1. как получить имя студента и имя класса, имеющий максимальные оценки.
  2. как получить имя студента и имя класса с минимальными отметками.
  3. как получить имя класса, имеющего максимальных студентов.

Ребята из Pls помогают мне Я новичок в MySQL.

+0

Добро пожаловать в StackOverflow! Пожалуйста, проверьте [FAQ - Как задать хороший вопрос?] (Http://stackoverflow.com/help/how-to-ask) о том, как задавать хорошие вопросы, чтобы вы получили хорошие ответы. По крайней мере, вы должны были попробовать что-то самостоятельно и в идеале показать какой-то ** код ** того, что вы пробовали. –

+0

Вы что-то пробовали? – Gunaseelan

+0

Для каждого вопроса будет другой запрос. –

ответ

2
SELECT a.name, b.classname 
FROM student a 
LEFT JOIN class b 
ON a.classid = b.id 
WHERE a.marks = (SELECT MAX(marks) FROM student); 

SELECT a.name, b.classname 
FROM student a LEFT JOIN class b 
ON a.classid = b.id 
WHERE a.marks = (SELECT MIN(marks) FROM student); 

SELECT b.classname 
FROM student a 
LEFT JOIN class b 
ON a.classid = b.id 
ORDER BY COUNT(a.classid) DESC LIMIT 1; 

не уверен, но вы можете попробовать это ... Я просто новичок тоже ...

+1

Не должно быть comas после «a», и вы должны добавить точку с запятой после каждого запроса. Третий запрос, похоже, не работает так, как это происходит. Вы должны отредактировать свой ответ, чтобы быть верным и избегать downvoting. –

+0

tnx для исправления меня .... – Pantamtuy

Смежные вопросы