• SQLZOO——1 SELECT names


    Pattern Matching Strings

    This tutorial uses the LIKE operator to check names. We will be using the SELECT command on the table world:

    1.

    You can use WHERE name LIKE 'B%' to find the countries that start with "B".

    • The % is a wild-card it can match any characters

    Find the country that start with Y

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE 'Y%'

     

    2.

    Find the countries that end with y

    1. SELECT name
    2. FROM world
    3. 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

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE '%x%'

    4.

    Iceland, Switzerland end with land - but are there others?

    Find the countries that end with land

    1. SELECT name
    2. FROM world
    3. 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

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE 'C%' and name LIKE '%ia'

     6.

    Greece has a double e - who has a double o?

    Find the country that has oo in the name

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE '%oo%'

     7.

    Bahamas has three a - who else?

    Find the countries that have three or more a in the name

    1. SELECT name
    2. FROM world
    3. 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.

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE '_t%'
    4. 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.

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE '%o__o%'

    10.

    Cuba and Togo have four characters names.

    Find the countries that have exactly four characters.

    1. SELECT name
    2. FROM world
    3. WHERE name LIKE '____'


    Harder Questions

    Well done for getting this far.

    The next questions are optional and only for students who are finding the basic questions too easy.

    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.

    1. SELECT name
    2. FROM world
    3. 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".

    The concat function

    1. SELECT name
    2. FROM world
    3. WHERE capital like concat(name,'_City')

    或:

    1. SELECT name
    2. FROM world
    3. WHERE capital like name + '_City'

    注意:Mexico City中间有空格,所以要有单字符通配符。

    13.

    Find the capital and the name where the capital includes the name of the country.

    1. select capital,name
    2. from world
    3. where capital like concat('%', name, '%')

    或:

    1. select capital,name
    2. from world
    3. where capital like '%' + 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.

    1. select capital,name
    2. from world
    3. where capital like concat('%',name, '_%')

    或:

    1. select capital,name
    2. from world
    3. where capital like '%' + 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.

    You can use the SQL function REPLACE.

    1. select name, replace(capital, name, '') as extension
    2. from world
    3. where capital like concat ('%',name,'%') and name != capital

  • 相关阅读:
    【微服务】Sentinel 适配网关进行流量控制
    解决Linux安装AppImage文件chrome-sandbox出错问题
    Python单元测试内置库uinttest使用介绍
    Office2019安装报错,错误码30015-11
    【瑞吉外卖】day06:文件上传下载、菜品新增、菜品分页查询、菜品修改
    木舟0基础学习Java的第十六天(异常,分类,自定义异常,注意事项)
    【Vue】路由vue-Router
    go-mysql-elasticsearch+mysql 同步 ElasticSearch(标贝科技)
    2.4 双链表
    k8s的网络插件Flannel和Calico(the hard way)
  • 原文地址:https://blog.csdn.net/lvcheng0309/article/details/126407053