LIKE 运算符
LIKE 运算符对于处理文本非常有用。我们将在 WHERE 子句中使用 LIKE。
LIKE 运算符经常与 % 一起使用。 % 告诉我们,我们可能会想要任何数量的字符,产生一组特定的字符或者遵循一组特定的字符。
记住,需要用单引号或双引号将传达给 LIKE 运算符的文本括住,因为这个字符串中的大小写字母不一样。 搜索 'T' 与搜索 't' 不同。
LIKE 匹配练习
image.png答案
答案IN 运算符
IN 运算符对于数字和文本列都很有用。这个运算符可使我们使用 =,但对于特定列的多个项目。 可以检查我们要提取数据的一个、两个或多个列值,但这些都在同一个查询中。 在后面的概念中,我们将介绍 OR 运算符,也可以使用这个运算符执行这些任务,但使用 In 运算符编写的查询更清楚一些。
其中非值的数据要用引号引起来,数字则不用。
IN的使用方法练习
练习答案
答案NOT 运算符
NOT 运算符是一个非常有用的运算符,用于与之前介绍的两个运算符 IN 和 LIKE 一起运算。通过指定 NOT LIKE 或 NOT IN,我们可以查找到所有不符合特定条件的行。
练习
练习答案
答案AND 运算符
AND 运算符用于 WHERE 语句中,用于一次考虑多个逻辑子句。 使用 AND 连接一个新的语句时,需要指定你感兴趣的列。可以同时连接尽可能多的考虑语句。 这个运算符可用于我们迄今为止所学习到的所有运算,包括算术运算符(+、*、-、/),可以使用 AND 运算符将 LIKE、IN 和 NOT 逻辑连接到一起。
AND的使用BETWEEN 运算符
有时使用 BETWEEN 比使用 AND 使语句更清楚一些。特别是在 AND 语句的不同部分使用相同的列时,就可以使语句比较清晰。 在上一个视频中,我们可能已经使用了 BETWEEN。
而不是编写:
WHERE column >= 6 AND column <= 10
编写成以下这样,或许会更好:
WHERE column BETWEEN 6 AND 10
练习
练习答案
答案OR 运算符
与 AND 运算符类似,OR 运算符可以组合多个语句。 使用 OR 连接新的语句时,需要指定你感兴趣的列。可以同时连接尽可能多的考虑语句。 这个运算符可用于我们迄今为止所学习到的所有运算,包括算术运算符(+、*、-、/),可以使用 OR 运算符将 LIKE、IN、NOT、AND 和 BETWEEN逻辑连接到一起。
将多个运算组合到一起时,可能经常需要使用括号来确保我们要执行的逻辑能得到正确执行。
练习
练习答案
答案概括
命令
你已经学到了关于在 SQL 中编写代码的很多东西!在继续后面的内容之前,让我们花一点时间来概括一下我们所讲的内容:
语句 | 用法 | 其他详情 |
---|---|---|
SELECT | SELECT Col1, Col2, ... | 提供你想要的列 |
FROM | FROM Table | 提供列存在的表 |
LIMIT | LIMIT 10 | 限制返回的行数 |
ORDER BY | ORDER BY Col | 根据列对表排序。与 DESC 一起使用。 |
WHERE | WHERE Col > 5 | 用于过滤结果的条件语句 |
LIKE | WHERE Col LIKE '%me% | 仅拉取文本中包含 'me' 的列 |
IN | WHERE Col IN ('Y', 'N') | 仅过滤包含 'Y' 或 'N' 列的行 |
NOT | WHERE Col NOT IN ('Y', "N') | NOT 经常与 LIKE 和 IN 一起使用 |
AND | WHERE Col1 > 5 AND Col2 < 3 | 过滤两个或多个条件必须为真的行 |
OR | WHERE Col1 > 5 OR Col2 < 3 | 过滤至少一个条件必须为真的行 |
BETWEEN | WHERE Col BETWEEN 3 AND 5 | 通常比使用 AND 的语法简单 |
其他提示
尽管 SQL 不区分大小写(它不在乎你将语句全部大写还是小写,但是关键词的顺序非常重要! :
SELECT col1, col2
FROM table1
WHERE col3 > 5 AND col4 LIKE '%os%'
ORDER BY col5
LIMIT 10;
注意,你可以检索不同于 ORDER BY 和 WHERE 语句中所使用列的列。假定这些列名均以这样的方式(col1、col2、col3、col4、col5)存在于一个名为 table1 的表中,此查询便会很好地运行。
后续内容
下节课中,你将学习JOIN(连接)。这是 SQL 作为一门语言能如此成功的秘诀所在(这一点早已不是秘密)。JOIN 使我们可以将多个表组合在一起。我们在此所学的所有运算对于后面的内容仍然重要,但通过将多个表的信息结合在一起,我们将能回答更复杂的问题!你已经掌握了很多内容,或许也编写了你人生的第一份代码,不过之后你还可以有更多的提升空间!
网友评论