sql中distinct的用法(四种示例分析)

等等,今天我在咖啡馆点餐时,服务员问我要不要加鸡蛋。
每次我说“不”,但每次邻桌的人问“是”,服务员最后都给他们加了两个鸡蛋。
这和SQL中的DISTINCT不一样吗?显然你只想要一份,但它却给了你很多份。

例如,有一个表“coffee_orders”,存储订单记录。
一位顾客点了三杯拿铁。
如果不使用DISTINCT,查询所有订单时会看到“latte”出现3 次。
使用 DISTINCT 后,就像服务员给了我一份干净的菜单,只列出了“想要的”选项,并删除了所有多余的鸡蛋。

我最近发现了一个有趣的细节。
在 2 02 3 年 5 月的服务器日志中,有一个查询使用 SELECT DISTINCT customer_id FROMorder WHERE order_date='2 02 3 -05 -1 5 '。
结果只返回了 8 7 个 ID,但实际上当天有 9 2 个订单。
这表明有些顾客当天下了不止一个订单,比如隔壁桌的人要两个鸡蛋,而 DISTINCT 只给了我“不要”的选项。

这条SQL语句在公司数据库中每天运行5 00多次,每次处理的数据量在2 000条左右。
有时候我在想,如果表中有1 0亿条订单记录,这个DISTINCT是不是也会给我1 0亿个重复的鸡蛋呢?

SQL中去除重复数据的几种方法,我一次性都告你​

这里有一个陷阱:直接使用 DISTINCT 可能会对整个表进行排序,效率很低。

不信:当使用带有批处理功能的GROUPBY时,数据量会导致性能问题。

不要这样做:不熟悉窗口函数可能会导致误用。
使用前先了解其原理。

SQL语句在数据库(mdb)中的应用:select distinct

您好,您问的是 MDB 数据库中的 SELECT DISTINCT 对吗?我在帮助同事获取最新信息的时候就使用了这个方法。
给我一些给你。

我记得2 02 3 年,我用那个MDB程序创建了一个社区垃圾分类表。
桌子上放置着许多类型的垃圾桶,但有些条目的书写方式有所不同。
例如,有的写“食物垃圾”,有的写“食物垃圾和生活垃圾”。
他们明明是同一类型,这很烦人。

那我想你不能手动一一删除吧?减速。
只需点击MDB界面的SQL查询并输入:
sql 我选择垃圾类型 垃圾进入记录表 你看我们这里使用的具体名称是“垃圾类型”和“垃圾记录”,抽象的概念。
输入后立即运行,结果就出来了。
其中唯一留下的全球性、独特的价值是“厨房垃圾”、“可回收物”和“一次性垃圾”。

顺便说一句,在执行MDB之前,我特意确认了该软件对输入法的影响相当大。
我尝试用中文输入法输入“,”或者“FROM”,但是马上就报错,说语法不正确。
所以用非英文输入法输入标点符号和关键字会出现问题,所以大家要记住这一点。

还有,表名、字段名和数据库中一模一样。
我有一个朋友,“天录表”用的是“天录表”,而不是“中间有空格”,我在中间多写了一个空格,全部查询的结果是错误的。

这就是 SELECT DISTINCTION 的作用,它会过滤掉重复项,并且您将获得一个唯一值的世界列表,它最适合上述地理统计数据之类的场景,并且非常适合使用。