Difference between revisions of "Using Null Quiz"
From SQLZOO
(Created page with "Using Null Quiz <div class='db_ref' style='background:none'> <table class='zoo'> <caption>teacher</caption> <tr> <th>id</th> <th>dept</th> <th>name</th> <th>phone</th> <th>m...") |
|||
| (15 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
Using Null Quiz | Using Null Quiz | ||
| − | <div class=' | + | <div class='ref_section' style='background:none'> |
| − | <table class='zoo'> | + | <table class='zoo db_ref'> |
<caption>teacher</caption> | <caption>teacher</caption> | ||
<tr> | <tr> | ||
| Line 50: | Line 50: | ||
<td align='right'>3345</td> | <td align='right'>3345</td> | ||
<td></td> | <td></td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td colspan='5'>...</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
| − | <table class='zoo'> | + | <table class='zoo db_ref'> |
<caption>dept</caption> | <caption>dept</caption> | ||
<tr> | <tr> | ||
| Line 69: | Line 72: | ||
<td align='right'>3</td> | <td align='right'>3</td> | ||
<td>Engineering</td> | <td>Engineering</td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td colspan='2'>...</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
</div> | </div> | ||
| + | |||
| + | <div class='extra_space' style='width:1em; height:16em;'></div> | ||
<quiz shuffle=none display=simple> | <quiz shuffle=none display=simple> | ||
| − | { | + | {Select the code which uses a JOIN correctly. |
|type="()"} | |type="()"} | ||
- SELECT teacher.name, dept.name FROM teacher JOIN dept ON (dept = id) | - SELECT teacher.name, dept.name FROM teacher JOIN dept ON (dept = id) | ||
| Line 90: | Line 98: | ||
- SELECT name FROM teacher JOIN dept ON (id = dept) WHERE 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 | ||
| + | |type="()"} | ||
| + | - 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 <code>SELECT name, dept, COALESCE(dept, 0) AS result FROM teacher</code> on <code>teacher</code> table will: | {Using <code>SELECT name, dept, COALESCE(dept, 0) AS result FROM teacher</code> on <code>teacher</code> table will: | ||
| Line 98: | Line 113: | ||
- set dept value of all teachers to 0 | - set dept value of all teachers to 0 | ||
- set dept value of all teachers without department to 0 | - set dept value of all teachers without department to 0 | ||
| + | |||
| + | {Query: <code>SELECT name, CASE WHEN phone = 2752 THEN 'two' WHEN phone = 2753 THEN 'three' WHEN phone = 2754 THEN 'four' END AS digit FROM teacher</code> shows following 'digit': | ||
| + | |type="()"} | ||
| + | + '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 | ||
| + | <table style='float:left'><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 style='float:left'><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 style='float:left'><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 style='float:left'><caption>Table-D</caption> | ||
| + | <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 style='float:left'><caption>Table-E</caption><tr><td>Shrivell</td> | ||
| + | <td>1</td></tr><tr><td>Throd</td> | ||
| + | <td>1</td></tr><tr><td>Splint</td> | ||
| + | <td>1</td></tr><tr><td>Spiregrain</td> | ||
| + | <td>0</td></tr><tr><td>Cutflower</td> | ||
| + | <td>0</td></tr><tr><td>Deadyawn</td> | ||
| + | <td>0</td></tr></table> | ||
| + | |type="()"} | ||
| + | + Table-A | ||
| + | - Table-B | ||
| + | - Table-C | ||
| + | - Table-D | ||
| + | - Table-E | ||
</quiz> | </quiz> | ||
[[Category:Quizzes]] | [[Category:Quizzes]] | ||
Latest revision as of 12:43, 15 August 2012
Using Null Quiz
| id | dept | name | phone | mobile |
|---|---|---|---|---|
| 101 | 1 | Shrivell | 2753 | 07986 555 1234 |
| 102 | 1 | Throd | 2754 | 07122 555 1920 |
| 103 | 1 | Splint | 2293 | |
| 104 | Spiregrain | 3287 | ||
| 105 | 2 | Cutflower | 3212 | 07996 555 6574 |
| 106 | Deadyawn | 3345 | ||
| ... | ||||
| id | name |
|---|---|
| 1 | Computing |
| 2 | Design |
| 3 | Engineering |
| ... | |