- Simple Queries (4)
- Setting criteria using WHERE (5)
- Calculations (7)
- Calculations using dates (4)
- Basic joins (8)
- More exotic joins (2)
- Aggregation and grouping (8)
- Views (5)
- Subqueries (5)
- Stored procedures (5)
- Variables (8)
- Parameters and return values (11)
- Testing conditions (1)
- Looping (3)
- Scalar functions (6)
- Transactions (5)
- Creating tables (5)
- Temporary tables and table variables (9)
- Table-valued functions (6)
- Derived tables and CTEs (13)
- Dynamic SQL (4)
- Pivots (2)
- Triggers (2)
- Archived (70)
SQL | Setting criteria using WHERE exercise | Find anomalies in the table of events by combining criteria
This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.
You can learn how to do this exercise if you attend one of more of the courses listed below!
- Go into SQL Server Management Studio;
- Open the SQL file you've just unzipped (you can press CTRL + O to do this); then
- Execute this script.
This will generate the database that you'll need to use in order to do this exercise (note that the database and script are only to be used for exercises published on this website, and may not be reused or distributed in any form without the prior written permission of Wise Owl).
You need a minimum screen resolution of about 700 pixels width to see our exercises. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.
Write as many of the following queries as your mean trainer gives you time for:
|Query to show||Returns|
|Events which aren't in the Transport category (number 14), but which nevertheless include the text Train in the EventDetails column.||4 rows|
|Events which are in the Space country (number 13), but which don't mention Space in either the event name or the event details columns.||6 rows|
|Events which are in categories 5 or 6 (War/conflict and Death/disaster), but which don't mention either War or Death in the EventDetails column.||91 rows|
Save this query listing possible anomalies as Primeval, then close it down.
-- query 1
where CategoryID <> 14
and EventDetails like '%train%'
where CountryID = 13
EventName not like'%space%'
EventDetails not like '%space%'
where CategoryID in(5,6)
and EventDetails not like '%war%'
and EventDetails not like '%death%'
(4 rows affected)
(6 rows affected)
(99 rows affected)
SELECT * FROM tblEvent
WHERE CategoryID IN (5,6)
EventDetails NOT LIKE '%War%'
EventDetails not like '%dEATH&';
Why 99 and not 91? It was the database changed?
I tried to solve exercise B with the WAR and the DEATH but haven't succeeded207 yet. Can someone can help me and write the correct answer?
This is what I wrote:
where CategoryID = 5 or CategoryID = 6 and (EventDetails not like ('%war%death%')
Does your query deals with, "if the word death comes first and then war".
Where can i find the solutions of these exercises?
where exercise = 'sql'
1st query should not return 4 rows but 1
select * from tblEvent
where EventDetails like '% train %' and CategoryID != 14
i guess your query is:
EventDetails like '%train%'
which is incorrect as it will return words such as training...etc