草庐IT

Distinct

全部标签

sql - 当可以使用 GROUP BY 时,为什么不使用 DISTINCT?

根据tips来自MySQL性能维基:Don'tuseDISTINCTwhenyouhaveorcoulduseGROUPBY.有人可以发布可以使用GROUPBY而不是DISTINCT的查询示例吗? 最佳答案 如果您知道结果中的两列总是直接相关的,那么这样做会更慢:SELECTDISTINCTCustomerId,CustomerNameFROM(...)比这个:SELECTCustomerId,CustomerNameFROM(...)GROUPBYCustomerId因为在第二种情况下它只需要比较id,但在第一种情况下它必须比较两

MySQL 不区分大小写的 DISTINCT

谁能告诉我如何在不区分大小写的情况下从我的数据库中选择DISTINCT?我的查询是SELECTDISTINCTemailFROM`jm_order`结果显示了表中的所有电子邮件,但重复了不同案例的电子邮件。这是预料之中的,因为这些值在不同情况下是不同的。例如sam@gmail.comjosh@gmail.comSam@gmail.comjohn@gmail.com但我想要的是相同的电子邮件,无论大小如何都分组在一起。我可以对我的SQL进行哪些调整以阻止它重复,例如sam@gmail.com和Sam@gmail.com只是因为它们是不同的情况? 最佳答案

MySQL 不区分大小写的 DISTINCT

谁能告诉我如何在不区分大小写的情况下从我的数据库中选择DISTINCT?我的查询是SELECTDISTINCTemailFROM`jm_order`结果显示了表中的所有电子邮件,但重复了不同案例的电子邮件。这是预料之中的,因为这些值在不同情况下是不同的。例如sam@gmail.comjosh@gmail.comSam@gmail.comjohn@gmail.com但我想要的是相同的电子邮件,无论大小如何都分组在一起。我可以对我的SQL进行哪些调整以阻止它重复,例如sam@gmail.com和Sam@gmail.com只是因为它们是不同的情况? 最佳答案

mysql - 在联接中选择不同的记录

我有两个mysql表-一个销售表:+----------------+------------------------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+----------------+------------------------------+------+-----+---------+-------+|StoreId|bigint(20)unsigned|NO|PRI|NULL|||ItemId|bigint(20)unsigned|NO||NULL|||SaleW

mysql - 在联接中选择不同的记录

我有两个mysql表-一个销售表:+----------------+------------------------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+----------------+------------------------------+------+-----+---------+-------+|StoreId|bigint(20)unsigned|NO|PRI|NULL|||ItemId|bigint(20)unsigned|NO||NULL|||SaleW

mysql - 选择 UNION 作为 DISTINCT

如何在执行UNION后对单个列执行DISTINCT操作?T1--IDValue112233T2--IDValue124455我正在尝试归还表格:IDValue1122334455我试过:SELECTDISTINCTID,ValueFROM(SELECT*FROMT1UNIONSELECT*FROMT2)AST3这似乎行不通。 最佳答案 为什么要使用子查询?这将起作用:SELECT*FROMT1UNIONSELECT*FROMT2UNION删除重复项。(UNIONALL没有) 关于mysq

mysql - 选择 UNION 作为 DISTINCT

如何在执行UNION后对单个列执行DISTINCT操作?T1--IDValue112233T2--IDValue124455我正在尝试归还表格:IDValue1122334455我试过:SELECTDISTINCTID,ValueFROM(SELECT*FROMT1UNIONSELECT*FROMT2)AST3这似乎行不通。 最佳答案 为什么要使用子查询?这将起作用:SELECT*FROMT1UNIONSELECT*FROMT2UNION删除重复项。(UNIONALL没有) 关于mysq

mysql - 如何从mysql表中获取不同的记录?

我有一张这样的tablestudentid|name|zip1|abc|12342|xyz|43213|asd|1234我想获取所有记录,但邮政编码不应重复。因此,在上述表记录的情况下,应获取第1条和第2条记录。第3条记录将不会被提取,因为它有一个已经在第1条记录中的邮政编码 最佳答案 SELECTDISTINCTfieldNameFROMtableName;以下查询将只选择不同的“zip”字段。SELECTDISTINCTzipFROMstudent;SELECT*FROMtableNameGROUPBYfieldName;以下查

mysql - 如何从mysql表中获取不同的记录?

我有一张这样的tablestudentid|name|zip1|abc|12342|xyz|43213|asd|1234我想获取所有记录,但邮政编码不应重复。因此,在上述表记录的情况下,应获取第1条和第2条记录。第3条记录将不会被提取,因为它有一个已经在第1条记录中的邮政编码 最佳答案 SELECTDISTINCTfieldNameFROMtableName;以下查询将只选择不同的“zip”字段。SELECTDISTINCTzipFROMstudent;SELECT*FROMtableNameGROUPBYfieldName;以下查

mysql - 如何统计 MySQL 中所有满足条件的不同值?

我正在尝试编写一个查询来查找特定字段中的不同值,计算该值的出现次数,对于该特定值的所有实例,另一个列值满足,然后显示结果如下(更多解释如下):示例数据库:RowIdStatusMemberIdentifier---------------------------1InProgress1111111112Complete1234567893NotStarted1467824524Complete1111111115Complete1234567896NotStarted1467824527Complete111111111期望的结果:StatusMemberIdentifierCount