尽管在数据库中的每一条数据是唯一的,但是对于查询结果来说可能不是,比如不同的电影可能在相同的年份上映。在这种情况下,SQL提供了一种去掉那些有重复列值的行通过 DISTINCT 关键字。
123SELECT DISTINCT column, another_column, …FROM mytableWHERE condition(s);
因为 DISTINCT 关键字会盲目地去掉一些重复的行,我们将在之后知道如何基于特定的行来聚集(Grouping)使用 GROUP BY 子句。
排序结果在现实场景中大量的数据在添加进数据库的时候是无序的,为了更好的阅读和理解查询结果,我们需要对查询得到...
上一节列出了一些数字操作符,SQL还支持一些对字符串的操作符,下表包含了一些常用的与文本数据相关的操作符:
运算符
条件
举例
=
区分大小写的字符串比较
col_name = “abc”
!= or <>
区分大小写的字符串不等比较
col_name != “abcd”
LIKE
不区分大小写的字符串比较
col_name LIKE “ABC”
NOT LIKE
不区分大小写的字符串不等比较
col_name NOT LIKE “ABCD”
%
用在字符串的任何地方来匹配零或者多个字符的串(只能和LIKE或者NOT LIKE 一起使用)
col_...
现在我们已经可以从一个表中取出特定列的数据了,但是如果一个表有几百万条数据,那么取出全部的数据将是非常效率低甚至不可能。为了过滤出特点需要返回的数据,我们需要在查询中使用 WHERE 分句,它会应用于每一行通过检查特定列的值来决定是否将此行作为结果返回。
12345SELECT column, another_column, …FROM mytable;WHERE condition AND/OR another_condition AND/OR …;
可以使用 AND 或者 OR 来组合子句(例如 id > 2 AND num < 5)。下表列出了一些有用的运算...
在关系型数据库中,数据都是存在表格(table)中,表格的每一行代表一条记录(record),而每一列(column)为记录的单个属性(property)。为了从数据库取到我们想要的内容,我们需要写SELECT查询语句(query)。查询语句声明了我们想要什么数据,在哪里找以及在返回之前需要作何处理。最基本的查询就是选择一个数据库表中的一到多列数据,查询的结果返回选择列的所有行记录,其中的每一行数据也可以成为一个实例(instance)。
12SELECT column, another_column, …FROM mytable;
如果我们想要查询这个表中的所有的列,我们可以使用 * ...