This repository was archived by the owner on Jul 5, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path1 SELECT names.sql
More file actions
112 lines (96 loc) · 3.03 KB
/
1 SELECT names.sql
File metadata and controls
112 lines (96 loc) · 3.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
-- SELECT names --
-- URL: https://sqlzoo.net/wiki/SELECT_names
-- Pattern Matching Strings
-- 1.
-- You can use WHERE name LIKE 'B%' to find the countries that start with "B".
-- Find the country that start with Y
SELECT name
FROM world
WHERE name LIKE 'Y%';
-- 2.
-- Find the countries that end with y
SELECT name
FROM world
WHERE name LIKE '%y';
-- 3.
-- Luxembourg has an x - so does one other country. List them both.
-- Find the countries that contain the letter x
SELECT name
FROM world
WHERE name LIKE '%x%';
-- 4.
-- Iceland, Switzerland end with land - but are there others?
-- Find the countries that end with land
SELECT name
FROM world
WHERE name LIKE '%land';
-- 5.
-- Columbia starts with a C and ends with ia - there are two more like this.
-- Find the countries that start with C and end with ia
SELECT name
FROM world
WHERE name LIKE 'C%ia';
-- 6.
-- Greece has a double e - who has a double o?
-- Find the country that has oo in the name
SELECT name
FROM world
WHERE name LIKE '%oo%';
-- 7.
-- Bahamas has three a - who else?
-- Find the countries that have three or more a in the name
SELECT name
FROM world
WHERE name LIKE '%a%a%a%';
-- 8.
-- India and Angola have an n as the second character. You can use the underscore as a single character wildcard.
-- Find the countries that have "t" as the second character.
SELECT name
FROM world
WHERE name LIKE '_t%'
ORDER BY name;
-- 9.
-- Lesotho and Moldova both have two o characters separated by two other characters.
-- Find the countries that have two "o" characters separated by two others.
SELECT name
FROM world
WHERE name LIKE '%o__o%';
-- 10.
-- Cuba and Togo have four characters names.
-- Find the countries that have exactly four characters.
SELECT name
FROM world
WHERE name LIKE '____';
-- Harder Questions
-- 11.
-- The capital of Luxembourg is Luxembourg. Show all the countries where the capital is the same as the name of the country
-- Find the country where the name is the capital city.
SELECT name
FROM world
WHERE name = capital;
-- 12.
-- The capital of Mexico is Mexico City. Show all the countries where the capital has the country together with the word "City".
-- Find the country where the capital is the country plus "City".
SELECT name
FROM world
WHERE capital = Concat(name, ' city');
-- 13.
-- Find the capital and the name where the capital includes the name of the country.
SELECT capital,
name
FROM world
WHERE capital LIKE Concat('%', name, '%');
-- 14.
-- Find the capital and the name where the capital is an extension of name of the country.
-- You should include Mexico City as it is longer than Mexico. You should not include Luxembourg as the capital is the same as the country.
SELECT capital,
name
FROM world
WHERE capital LIKE Concat(name, '_%');
-- 15.
-- For Monaco-Ville the name is Monaco and the extension is -Ville.
-- Show the name and the extension where the capital is an extension of name of the country.
SELECT name,
REPLACE(capital, name, '') AS ext
FROM world
WHERE capital LIKE Concat(name, '_%');