Difference between revisions of "Using Null Quiz"
Line 67: | Line 67: | ||
</div> | </div> | ||
− | <div class=' | + | <div class=quiz> |
+ | <div class=q>Select the code which uses a JOIN correctly. | ||
+ | <syntaxhighlight class=d lang='sql'> SELECT teacher.name, dept.name FROM teacher JOIN dept ON (dept = id) </syntaxhighlight> | ||
+ | <syntaxhighlight class=d lang='sql'> SELECT teacher.name, dept.name FROM teacher, dept INNER JOIN ON (teacher.dept = dept.id) </syntaxhighlight> | ||
+ | <syntaxhighlight class=d lang='sql'> SELECT teacher.name, dept.name FROM teacher, dept JOIN WHERE(teacher.dept = dept.id) </syntaxhighlight> | ||
+ | <syntaxhighlight class=d lang='sql'> SELECT teacher.name, dept.name FROM teacher OUTER JOIN dept ON dept.id </syntaxhighlight> | ||
+ | <syntaxhighlight class='d y' lang='sql'> SELECT teacher.name, dept.name FROM teacher LEFT OUTER JOIN dept ON (teacher.dept > dept.id) </syntaxhighlight> | ||
+ | </div> | ||
− | < | + | <div class=q>Select the correct statement that shows the name of department which employs Cutflower |
− | + | - <syntaxhighlight class=d lang='sql'> SELECT dept.name FROM teacher JOIN dept ON (dept.id = (SELECT dept FROM teacher WHERE name = 'Cutflower')) </syntaxhighlight> | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name FROM teacher JOIN dept ON (dept.id = teacher.dept) WHERE dept.id = (SELECT dept FROM teacher HAVING name = 'Cutflower') </syntaxhighlight> | |
− | - <syntaxhighlight lang='sql'> SELECT | + | <syntaxhighlight class='d y' lang='sql'> SELECT dept.name FROM teacher JOIN dept ON (dept.id = teacher.dept) WHERE teacher.name = 'Cutflower' </syntaxhighlight> |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name FROM teacher JOIN dept WHERE dept.id = (SELECT dept FROM teacher WHERE name = 'Cutflower') </syntaxhighlight> | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT name FROM teacher JOIN dept ON (id = dept) WHERE id = (SELECT dept FROM teacher WHERE name = 'Cutflower') </syntaxhighlight> | |
− | + | </div> | |
− | |||
− | + | <div class=q>Select out of following the code which uses a JOIN to show a list of all the departments and number of employed teachers | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name, COUNT(*) FROM teacher LEFT JOIN dept ON dept.id = teacher.dept </syntaxhighlight> | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name, COUNT(teacher.name) FROM teacher, dept JOIN ON dept.id = teacher.dept GROUP BY dept.name </syntaxhighlight> | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name, COUNT(teacher.name) FROM teacher JOIN dept ON dept.id = teacher.dept GROUP BY dept.name </syntaxhighlight> | |
− | + | <syntaxhighlight class=d lang='sql'> SELECT dept.name, COUNT(teacher.name) FROM teacher LEFT OUTER JOIN dept ON dept.id = teacher.dept GROUP BY dept.name </syntaxhighlight> | |
− | + | <syntaxhighlight class='d y' lang='sql'> SELECT dept.name, COUNT(teacher.name) FROM teacher RIGHT JOIN dept ON dept.id = teacher.dept GROUP BY dept.name </syntaxhighlight> | |
− | + | </div> | |
− | + | <div class=q>Using <code>SELECT name, dept, COALESCE(dept, 0) AS result FROM teacher</code> on <code>teacher</code> table will: | |
− | + | <div class=d>display 0 in result column for all teachers</div> | |
− | + | <div class='d y'>display 0 in result column for all teachers without department</div> | |
− | + | <div class=d>do nothing - the statement is incorrect</div> | |
− | + | <div class=d>set dept value of all teachers to 0</div> | |
− | + | <div class=d>set dept value of all teachers without department to 0</div> | |
− | + | </div> | |
− | + | <div class=q>Query: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<syntaxhighlight lang='sql'> | <syntaxhighlight lang='sql'> | ||
SELECT name, | SELECT name, | ||
Line 112: | Line 110: | ||
shows following 'digit': | shows following 'digit': | ||
− | + | <div class='d y'>'four' for Throd</div> | |
− | + | <div class=d>NULL for all teachers</div> | |
− | + | <div class=d>NULL for Shrivell</div> | |
− | + | <div class=d>'two' for Cutflower</div> | |
− | + | <div class=d>'two' for Deadyawn</div> | |
− | + | </div> | |
− | + | <div class=q>Select the result that would be obtained from the following code: | |
<syntaxhighlight lang='sql'> | <syntaxhighlight lang='sql'> | ||
SELECT name, | SELECT name, | ||
Line 130: | Line 128: | ||
FROM teacher | FROM teacher | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | <table | + | <table class='d y'><caption>Table-A</caption><tr><td>Shrivell</td><td>Computing</td></tr><tr><td>Throd</td><td>Computing</td></tr><tr><td>Splint</td><td>Computing</td></tr><tr><td>Spiregrain</td><td>Other</td></tr><tr><td>Cutflower</td><td>Other</td></tr><tr><td>Deadyawn</td><td>Other</td></tr></table> |
− | <table | + | <table class=d><caption>Table-B</caption><tr><td>Shrivell</td><td>Computing</td></tr><tr><td>Throd</td><td>Computing</td></tr><tr><td>Splint</td><td>Computing</td></tr><tr><td>Spiregrain</td><td>Computing</td></tr><tr><td>Cutflower</td><td>Computing</td></tr><tr><td>Deadyawn</td><td>Computing</td></tr></table> |
− | <table | + | <table class=d><caption>Table-C</caption><tr><td>Shrivell</td><td>Computing</td></tr><tr><td>Throd</td><td>Computing</td></tr><tr><td>Splint</td><td>Computing</td></tr></table> |
− | <table | + | <table class=d><caption>Table-D</caption> |
<tr> | <tr> | ||
<td>Spiregrain</td> | <td>Spiregrain</td> | ||
Line 147: | Line 145: | ||
</tr> | </tr> | ||
</table> | </table> | ||
− | <table | + | <table class=d><caption>Table-E</caption><tr><td>Shrivell</td> |
<td>1</td></tr><tr><td>Throd</td> | <td>1</td></tr><tr><td>Throd</td> | ||
<td>1</td></tr><tr><td>Splint</td> | <td>1</td></tr><tr><td>Splint</td> | ||
Line 154: | Line 152: | ||
<td>0</td></tr><tr><td>Deadyawn</td> | <td>0</td></tr><tr><td>Deadyawn</td> | ||
<td>0</td></tr></table> | <td>0</td></tr></table> | ||
− | + | </div> | |
− | + | </div> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | </ | ||
[[Category:Quizzes]] | [[Category:Quizzes]] |
Revision as of 12:35, 23 April 2015
Test your understanding of the NULL value
id | dept | name | phone |
---|---|---|---|
101 | 1 | Shrivell | 2753 |
102 | 1 | Throd | 2754 |
103 | 1 | Splint | |
104 | Spiregrain | ||
105 | 2 | Cutflower | 3212 |
106 | Deadyawn | ||
id | name |
---|---|
1 | Computing |
2 | Design |
3 | Engineering |
Select the code which uses a JOIN correctly.
SELECT teacher.name, dept.name FROM teacher JOIN dept ON (dept = id)
SELECT teacher.name, dept.name FROM teacher, dept INNER JOIN ON (teacher.dept = dept.id)
SELECT teacher.name, dept.name FROM teacher, dept JOIN WHERE(teacher.dept = dept.id)
SELECT teacher.name, dept.name FROM teacher OUTER JOIN dept ON dept.id
SELECT teacher.name, dept.name FROM teacher LEFT OUTER JOIN dept ON (teacher.dept > dept.id)
Select the correct statement that shows the name of department which employs Cutflower
-
SELECT dept.name FROM teacher JOIN dept ON (dept.id = (SELECT dept FROM teacher WHERE name = 'Cutflower'))
SELECT dept.name FROM teacher JOIN dept ON (dept.id = teacher.dept) WHERE dept.id = (SELECT dept FROM teacher HAVING name = 'Cutflower')
SELECT dept.name FROM teacher JOIN dept ON (dept.id = teacher.dept) WHERE teacher.name = 'Cutflower'
SELECT dept.name FROM teacher JOIN dept WHERE dept.id = (SELECT dept FROM teacher WHERE name = 'Cutflower')
SELECT name FROM teacher JOIN dept ON (id = dept) WHERE id = (SELECT dept FROM teacher WHERE name = 'Cutflower')
Select out of following the code which uses a JOIN to show a list of all the departments and number of employed teachers
SELECT dept.name, COUNT(*) FROM teacher LEFT JOIN dept ON dept.id = teacher.dept
SELECT dept.name, COUNT(teacher.name) FROM teacher, dept JOIN ON dept.id = teacher.dept GROUP BY dept.name
SELECT dept.name, COUNT(teacher.name) FROM teacher JOIN dept ON dept.id = teacher.dept GROUP BY dept.name
SELECT dept.name, COUNT(teacher.name) FROM teacher LEFT OUTER JOIN dept ON dept.id = teacher.dept GROUP BY dept.name
SELECT dept.name, COUNT(teacher.name) FROM teacher RIGHT JOIN dept ON dept.id = teacher.dept GROUP BY dept.name
Using
SELECT name, dept, COALESCE(dept, 0) AS result FROM teacher
on teacher
table will:
display 0 in result column for all teachers
display 0 in result column for all teachers without department
do nothing - the statement is incorrect
set dept value of all teachers to 0
set dept value of all teachers without department to 0
Query:
SELECT name,
CASE WHEN phone = 2752 THEN 'two'
WHEN phone = 2753 THEN 'three'
WHEN phone = 2754 THEN 'four'
END AS digit
FROM teacher
shows following 'digit':
'four' for Throd
NULL for all teachers
NULL for Shrivell
'two' for Cutflower
'two' for Deadyawn
Select the result that would be obtained from the following code:
SELECT name,
CASE
WHEN dept
IN (1)
THEN 'Computing'
ELSE 'Other'
END
FROM teacher
Shrivell | Computing |
Throd | Computing |
Splint | Computing |
Spiregrain | Other |
Cutflower | Other |
Deadyawn | Other |
Shrivell | Computing |
Throd | Computing |
Splint | Computing |
Spiregrain | Computing |
Cutflower | Computing |
Deadyawn | Computing |
Shrivell | Computing |
Throd | Computing |
Splint | Computing |
Spiregrain | Other |
Cutflower | Other |
Deadyawn | Other |
Shrivell | 1 |
Throd | 1 |
Splint | 1 |
Spiregrain | 0 |
Cutflower | 0 |
Deadyawn | 0 |