We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
- Prepare
- SQL
- Basic Join
- The Report
- Discussions
The Report
The Report
Sort by
recency
|
2941 Discussions
|
Please Login in order to post a comment
My solution by creating a view table.
CREATE VIEW Students_View AS SELECT Name, ( SELECT Grade FROM Grades WHERE Min_Mark <= Students.Marks AND Students.Marks <= Max_Mark ) AS Grade, Marks FROM Students;
SELECT CASE WHEN Grade >= 8 THEN Name END, Grade, Marks FROM Students_View ORDER BY Grade DESC, Name ASC;
----if someone finds a mistake in this please comment Select CASE When grades >= 8 Then name Else NULL End As name , grades, marks_secured From
(Select s.name As Name, g.grade as Grades, s.marks As marks_secured From Students s Left Join Grades g ON s. marks between g.min_mark And g.max_mark) As rep Order by grades DESC , name;
MySQL query
MySQL: with user variable definition
SELECT IF(grade<8, NULL, name) AS name, grade, marks
FROM students AS s
INNER JOIN grades AS g
ORDER BY grade DESC, name