带DISTINCT子句的SQL SELECT语句
时间:2020-02-23 14:32:32 来源:igfitidea点击:
在本文中,我们将重点介绍SQL SELECT DISTINCT语句。
什么是SQL SELECT语句?
SQL Select语句用于从表/数据库的列中选择和显示特定数据。
语法:
SELECT * FROM Table-name; OR SELECT column1, column2, ...., columnN from Table-name;
例:
create table Info(id integer, Cost integer, city varchar(200)); insert into Info(id, Cost,city) values(1, 100,"Pune"); insert into Info(id, Cost,city) values(2, 50, "Satara"); insert into Info(id, Cost,city) values(3, 65,"Pune"); insert into Info(id, Cost,city) values(4, 97,"Mumbai"); insert into Info(id, Cost,city) values(5, 12,"USA"); Select * from Info;
输出:
id Cost city 1 100 Pune 2 50 Satara 3 65 Pune 4 97 Mumbai 5 12 USA
什么是SQL DISTINCT子句?
SQL DISTINCT子句有助于从表中提取非冗余值,即排除冗余/重复值并仅显示唯一值。
DISTINCT子句与SQL Aggregation函数一起很好地工作。
SQL DISTINCT子句不能一次映射多个列。
语法:
DISTINCT(column-name)
例:
SELECT DISTINCT(city) from Info;
输出:
city Pune Satara Mumbai USA
使用DISTINCT子句的SQL SELECT工作
可以将SQL SELECT语句与DISTINCT子句组合在一起,以提取并显示特定表中的唯一值。
此外,SELECT DISTINCT语句可与不同的聚合函数(例如COUNT(),AVG()等)一起使用,以根据某些预定义条件显示唯一值。
语法:
SELECT DISTINCT(column-name) FROM Table;
了解了SQL SELECT DISTINCT语句的工作原理之后,现在让我们在下面的部分中了解一下该语句的实现。
通过示例实现SQL SELECT DISTINCT
在下面的示例中,我们将SQL DISTINCT语句与ORDER BY子句结合在一起。
其中,它会根据"费用"值以升序显示唯一的"城市"数据。
Select DISTINCT(city),Cost From Info ORDER BY Cost;
输出:
city Cost USA 12 Satara 50 Pune 65 Mumbai 97 Pune 100
现在,我们使用了COUNT(*)函数和SELECT DISTINCT语句来显示列" city"的所有唯一值的计数。
SELECT COUNT(*) FROM ( SELECT DISTINCT city FROM Info) as Inn;
输出:
COUNT(*) 4
其中我们创建了一个表格-"信息",其中包含各列。
此外,我们将SELECT DISTINCT语句与WHERE子句一起使用,以提取并显示"费用"等于100的唯一值。
create table Info(id integer, Cost integer, city varchar(200)); insert into Info(id, Cost,city) values(1, 100,"Pune"); insert into Info(id, Cost,city) values(2, 50, "Satara"); insert into Info(id, Cost,city) values(3, 100,"Pune"); insert into Info(id, Cost,city) values(4, 100,"Mumbai"); insert into Info(id, Cost,city) values(5, 12,"USA"); SELECT DISTINCT city,Cost FROM Info WHERE Cost=100;
输出:
city Cost Pune 100 Mumbai 100