草庐IT

Distinct

全部标签

mysql - SELECT DISTINCT(column) FROM table on an indexed column 的计算复杂度

问题我不是compsci专业的,所以如果我混淆了术语,请原谅我。调用的计算复杂度是多少SELECTDISTINCT(column)FROMtable或SELECT*FROMtableGROUPBYcolumn在被索引的列上?它与行数或列中不同值的数量成正比。我相信这将是O(1)*NUM_DISINCT_COLS与O(NUM_OF_ROWS)背景例如,如果我有1000万行,但在视觉上该列中只有10个不同的值/组,您可以简单地计算每个组中的最后一项,这样时间复杂度将与不同组的数量而不是行。因此,计算100万行和计算100行所花费的时间相同。我相信复杂度将是O(1)*Number_Of_DI

mysql - SELECT DISTINCT + 来自两列的匹配值 = "unique"

我知道标题措辞不佳,但我想不出更好的表达方式。我正在学习Ruby并在MySQL上刷新。我使用已完成航类的历史列表作为练习数据集,大约有100,000行可供使用。每条航类记录包括始发地和目的地机场(字段“origin”和“dest”),以及总飞行距离(字段“distance”)。作为练习,我想展示按距离降序排列的10条最长路线。但是,我想将每对端点视为一条路线,而不管哪个是起点,哪个是目的地。因此,例如JFK-LAX和LAX-JFK应被视为单一路线。当我运行查询时:SELECTDISTINCTdistance,origin,destFROMflightsORDERBYdistanceDE

MYSQL Advanced 选择具有相应 ID 的不同值,这些值不在另一个表中

编辑:我的一个表中的SELECTDISTINCT值有一个大问题。表1:T1pidthingsub-thingtnumber-------------------------------------------1A1212A01A000011234562A1212A01A000021234573A1212A01A000021234584A1214A01B000011234595A1214A01B000021234606A1214A01B000011234617A1217C01A00001123462表2:T2idpidthingsub-thingtnumberh1------------

php - 按最高或最低值选择不同

我正在使用MySQL/PHP5开发田径排名数据库,我正在努力寻找最佳方法来按最高值查询每个唯一运动员的结果。只是SELECTdistinctname,eventFROMresults示例数据库name|event|result--------------------------athlete1|40|7.43athlete2|40|7.66athlete1|40|7.33athlete1|60|9.99athlete2|60|10.55所以假设在这种情况下,我想根据我尝试过的最佳表现对参加40米短跑比赛的运动员进行排名SELECTdistinctname,eventFROMresult

mysql select count distinct row 数量

是否可以计算MySQL中具有特定值的5行或更多行的行数?它与distinct完全相同,但会忽略少于5行的值此外,如果它确实找到了超过5行的值,我只希望它算作1。如果不清楚或不够清楚,请告诉我Table:ID1001100110011001100110021002100310031003100310031004我希望此表计算具有5行或更多行的唯一ID的数量。所以我希望它返回2更新:$var=5;try{$results=$db->prepare("SELECTCOUNT(*)asTotalFROM(SELECTuser_idasYourCountFROMcard_statsGROUPBY

sql - MySQL COUNT(DISTINCT()) 意外结果

我在CentOS5.1上使用MySQL5.0.45。SELECTDISTINCT(email)FROMnewsletter返回217259行SELECTCOUNT(DISTINCT(email))FROMnewsletter返回180698作为计数。SELECTCOUNT(*)FROM(SELECTDISTINCT(email)FROMnewsletter)ASfoo返回180698作为计数。难道3个查询不应该返回相同的值吗?这是时事通讯表的架构CREATETABLE`newsletter`(`newsID`int(11)NOTNULLauto_increment,`email`var

mysql - 从 mysql 查询中获取不同的记录

在我的应用程序中,有发布者和类别。一个发布者可以属于多个类别。当我进行我的mysql事务时,它将为其所属的每个类别返回相同的发布者记录。这是查询:SELECTgrdirect_publisher.name,grdirect_publisher.short_description,grdirect_publisher.thumb_image,grdirect_publisher.url,grdirect_category.nameAScatnameFROMgrdirect_publisherJOINgrdirect_publisher_categoriesONgrdirect_publi

mysql - MySQL 的 `ORDER BY` 在多重集上是否不同?

假设一个表有一列存储整数。-----------------------------id|some_int|some_other_value-----------------------------15hello29how3987are45you59thanks61for75answering.:-)SELECT*FROMmytableORDERBYsome_int;是否不同?这意味着它会在每次查询后始终以相同的顺序返回行吗? 最佳答案 据我所知,如果orderby子句中有重复项,则无法保证重复项的显示顺序。如果这是一个问题,您可以

mysql - 在重复字段的情况下获取mysql中的字段总和选择最大值

我有这个------------------------------------course_id|totalmarks|year------------------------------------1501------->Iwanttoremovethisfromthesum2501350111002------------------------------------我真的不知道该怎么做,我有3门不同的类(class),我想得到总分的总和,但考虑到year的最大数量,有一个不同的course_id,结果应该是200,提前谢谢你 最佳答案

mysql - 如何使用 SQL 从每个组中只获得一个结果

我真的不知道如何查询这个任务。我需要为表中每条记录的第一行获取一个时间,但每次当我有一组相同的结果时,我需要在第一个结果出现且信号等于1时获取第一个结果。我不知道如何正确解释它,但我会举一个例子,你会明白我的意思。记录:ID|Time|Serial|Signal1|10:59|12|12|11:00|12|13|11:01|12|14|11:01|13|15|11:02|12|06|11:03|12|07|11:05|13|18|11:07|12|1所以我需要这个结果:ID|Time|Serial|Signal1|10:59|12|14|11:01|13|17|11:05|13|18|