草庐IT

Distinct

全部标签

php - SELECT DISTINCT 名称但返回所有数据

所以我有一张满是汽车的table:假设有4辆道奇毒蛇,数据库中将有4个条目,除了carID之外都相同。carID|carname|carmodel|colour|reg--------------------------------------------------1|viper|dodge|red|1232|viper|dodge|red|1243|viper|dodge|red|1254|viper|dodge|red|1265|R8|audi|blue|1276|R8|audi|blue|128当用户搜索汽车时,我只想显示一辆道奇毒蛇。但是,我想从该行以及其他所有不同的汽车中提

mysql - 在 MySQL 查询中,DISTINCT 是在 GROUP BY 之前还是之后应用的?

下面是我正在运行的查询。DISTINCT是在GROUPBY之前还是之后应用?表格如下所示:id,stateid不是唯一的,一个实体可以有多个状态相同或不同的条目。这种行为可能会彻底改变我的结果。如果在GROUPBY之前应用DISTINCT,那么在整个集合中它只会对每个entity计数一次(只会出现在一个状态)。如果它发生在之后,那么每个实体在每个状态中只会被计算一次,但可以在多个状态中被计算。SELECTstate,COUNT(DISTINCTentity_id)AScountFROMentitiesGROUPBYstateORDERBYcountDESC;我的目标是在每个state中

mysql - 选择具有不同值和最大日期的行

我有一个包含三列的MySQL(5.1.49)表。mysql>createtabletestme(idintauto_increment,id2intnotnull,somedatedatetime,primarykey(id));在我的例子中,id2不是唯一的,但我想返回具有不同id2值且最大somedate的行。这是一些示例数据。mysql>insertintotestmevalues(1,5,'2012-01-0201:01:01'),(2,5,'2012-02-0202:02:02'),(3,7,'2010-01-1011:01:33');这question几乎回答了我的问题,但

mysql不同的行或不同的字段

这之间是否存在性能或其他差异:SELECTdistinct(users.id),2assomeFieldName,0assomeOtherFieldNameFromusersjoin...还有这个:SELECTdistinctusers.id,2assomeFieldName,0assomeOtherFieldNameFromusersjoin...结果集用作插入语句的一部分,由于连接(此处未显示),选择可能会多次返回同一用户ID我正在使用mysql。 最佳答案 没有“不同的字段”这样的东西。您的第一个语法与第二个语法的解析相同:括

mysql - 如何统计mysql中的非重复列?

例如:使用selectquery我得到以下结果:columnAcolumnBtype1typeatype2typeatype3typebtype4typectype5typedtype6typedtype7typed使用DISTINCT我只得到了distinctresult,但我还想得到每个distinct的总数。现在我想获得总数typea,typeb,typecandtyped.就像:columnBtotaltypea2typeb1typec1typed3非常感谢!! 最佳答案 您可以使用GROUPBY按类型获取结果:SELECT

mysql - 如何获得具有最大值的不同行

我很抱歉问什么必须非常简单才能解决,但我似乎无法解决这个问题..我什至无法为我的问题想出一个真正合适的标题,请原谅也是如此。我有一个民意测验,每个用户可以对一个问题发布多个答案,然后其他人对这些答案进行投票。我需要得到一个结果,其中返回每个用户投票最高的答案。测试用例:让我们假设一个问题,例如“您最喜欢的歌曲名言是什么?”CREATETABLE`answers`(`id`INTNOTNULLAUTO_INCREMENTPRIMARYKEY,`authorId`INT,`answer`TEXTNOTNULL,`votes`INTNOTNULL)ENGINE=MYISAMCHARACTER

mysql - 'IS DISTINCT FROM' 是真正的 MySQL 运算符吗?

在一本书中我看到了这样的语法:SELECT*FROMinwWHEREidISDISTINCTFROM4;但是我得到一个错误:ERROR1064(42000):YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'DISTINCTFROM4'atline1它是一个替代品:mysql>SELECT*FROMinwWHEREidisnullORid4;+------+|id|+------+|NULL||NULL||3|+---

MySQL DISTINCT 函数不工作

使用MySQL。以下SQL语句可以完美运行:SELECTa.ID,a.DISPNAME,a.UNIT_TYPE,a.MODELNUM,a.DESCRIP,a.DATE_ADDED,b.TYP,c.FIRSTNAME,c.LASTNAMEFROMjobs_engineeringaINNERJOINunit_typesbONa.UNIT_TYPE=b.IDINNERJOINuserscONa.AEID=c.USERIDORDERBYa.DATE_ADDEDDESC但现在我只想要列DISPNAME的唯一记录,因为该列有多个重复值。我添加了DISTINCT方法SELECTa.ID,DISTIN

sql - 在 JOIN 之后选择 DISTINCT 值

我有3个表:Vehicle:vehicle_id,vehicle_type1,motorcycle2,car3,vanOwners:person_id,vehicle_id,date_bought1,1,20091,2,20082,3,20092,1,2005我想显示所有车辆名称的列表。如果person_id=1,则还应返回date_bought。所以我想我会从这个开始:SELECT*FROMvehiclesLEFTJOINOwnersUSING(vehicle_id)返回这个:1,1,motorcycle,20091,2,car,20082,3,van,20092,1,motorcy

使用 GROUP BY 和 DISTINCT 的 MySQL 条件 SUM

我的foos表中有以下数据结构:-----------------------------------------------|id|bar_id|baz_id|date|value|-----------------------------------------------|1|1|1|2013-12-01|failure||2|1|1|2013-12-09|failure||3|2|1|2013-12-02|success||4|3|1|2013-12-10|success||5|3|1|2013-12-01|failure||6|3|1|2013-12-08|success||