SQLite-DISTINCT
SQLite DISTINCT
摘要:在本教程中,您将学习如何使用 SQLite SELECT DISTINCT 子句删除结果集中的重复行。
SELECT DISTINCT select_list
FROM table;
SQLite 将NULL值视为重复项。如果对具有 NULL 值的列使用 DISTINCT 子句,SQLite 将保留一行 NULL 值。
SQLite SELECT DISTINCT例子
使用 customer表来说明。

假设您想知道客户所在的城市,可以使用 SELECT 语句从客户表的城市列中获取数据,如下所示:
SELECT city
FROM customers
ORDER BY city;

同一个城市名会重复显示。 为了让城市名只显示一次,可以使用 DISTINCT子句。
SELECT DISTINCT city
FROM customers
ORDER BY city;

SQLite 在多列上使用SELECT DISTINCT
以下语句查询顾客的所属的国家和城市。
SELECT
city,
country
FROM
customers
ORDER BY
country;

图中结果集包含重复的城市和国家。
要删除城市和国家的重复项,你需要对 city 和 country 两个字段都应用 DISTINCT 子句,如下面的查询所示:
SELECT DISTINCT
city,
country
FROM
customers
ORDER BY
country;

SQlite使用city和country的组合来评估重复性。
SQLite SELECT DISTINCT 与 NULL 示例
这个语句从 customers 表中返回了客户的公司名字。
SELECT
company
FROM
customers;
他会返回包含NULL值的59行记录。
如果你应用DISTINCT语句,那么只会返回1条NULL值的行记录。
SELECT DISTINCT
company
FROM
customers;

这个语句的结果返回11行,其中有1行是NULL值。
浙公网安备 33010602011771号