草庐IT

Cache_Group

全部标签

MySQL - 使用 GROUP BY 和 DESC

在我的SQL查询中,我使用GROUPBY和ORDERBY子句选择数据。该表在多行中具有相同的数字,每行中的时间不同。所以我想我想应用一个GROUPBY子句。然而在结果中返回最早的时间和数字,但我需要最近的时间。SELECT*FROMTABLEGROUPBY(numbers)ORDERBYtimeDESC查询看起来好像应该首先应用GROUPBY然后ORDERBY...但结果似乎不是这样工作的。有什么办法可以解决这个问题吗? 最佳答案 SELECT*FROMtabletWHEREtime=(SELECTmax(time)FROMtabl

Mysql UNION 和 GROUP BY

我有2个表需要根据日期和2个值加在一起。这给了我所有信息的列表-很好。$query=(SELECTdate,debit,credit,noteFROMproj3_cash)UNION(SELECTsettle,purch,sale,issueFROMproj3_trades)ORDERBYdate";现在我需要对两个表中的每日总计信息进行分组。$query="(SELECTdate,SUM(debit),SUM(credit)FROMproj3_cashGROUPBYdate)UNION(SELECTsettleasdate,SUM(purch)asdebit,SUM(sale)asc

sql - MySQL GROUP BY 行为

给定下表'foo'ID|FirstName|LastName----------------------------67JohnSmith----------------------------67BillJacobs以下查询将返回什么first_name和last_name,为什么?SELECT*FROMfooWHEREID=67GROUPBYID 最佳答案 MySQL任意选择一行。在实践中,常用的MySQL存储引擎返回组中第一行的值,与物理存储相关。createtablefoo(idserialprimarykey,catego

mysql - MySQL 中 group_concat_max_len 的最大允许值是多少?

我正在使用group_concat将很多行连接成一个。我使用以下方法将groupconcat设置为10000:SETgroup_concat_max_len=10000;但即便如此,我的输出单元格仍然不完整并以...结尾我尝试设置group_concat_max_len=20000甚至没有帮助。我还尝试将group_concat_max_len设置为99999999。它仍然没有完成我的输出文本。我检查了其中一个组concat在Length=230个字符处停止,然后给出...还有其他办法吗? 最佳答案 查看此链接:https://de

mysql - 返回 MySQL 中每个 'last' 的 'group by' 行

是否有更有效的方法来执行以下操作?select*fromfooasawherea.id=(selectmax(id)fromfoowhereuid=a.uidgroupbyuid)groupbyuid;)这个答案看起来很相似,但是这个答案是最好的方法吗-HowtoselectthefirstrowforeachgroupinMySQL?谢谢,克里斯。附:表格如下:CREATETABLEfoo(idINT(10)NOTNULLAUTO_INCREMENT,uidINT(10)NOTNULL,valueVARCHAR(50)NOTNULL,PRIMARYKEY(`id`),INDEX`ui

mysql - Django 中的 GROUP_CONCAT 等效项

假设我有下表fruits:id|type|name-----------------0|apple|fuji1|apple|mac2|orange|navel我的目标是最终得出不同类型的数量和名称的逗号分隔列表:apple,2,"fuji,mac"orange,1,"navel"这可以在MySQL中使用GROUP_CONCAT轻松完成,但我在使用Django等效项时遇到了问题。这是我到目前为止所拥有的,但我缺少GROUP_CONCAT内容:query_set=Fruits.objects.values('type').annotate(count=Count('type')).orde

mysql - 当查询有 GROUP BY 时如何获得总数的百分比?

假设我有一个包含电影Actor姓名和他们看过的电影的非标准化表格。例如。CREATETABLEmovies_actors(movies_actors_idINT,movieVARCHAR(255),actorVARCHAR(255),PRIMARYKEY(movies_actors_id));我做了一个SELECTactor,COUNT(1)FROMmovies_actorsGROUPBYactor来找出这个Actor演过多少部电影。但我也想知道那个Actor的电影比例已经进去了。我想我可以这样做:SELECTactor,COUNT(1)AStotal,COUNT(1)/(SELECT

mysql - SQL 在 GROUP BY 中显示最近的记录?

我有一个看起来像这样的表:id|SubjectCode|Grade|DateApproved|StudentId1SUB1231.251/4/20122012-123452SUB1232.001/5/20122012-123453SUB1233.001/5/20122012-98765我正在尝试按SubjectCode进行分组,但我希望它显示最新的DateApproved,因此它看起来像:id|SubjectCode|Grade|DateApproved|StudentId2SUB1232.001/5/20122012-123453SUB1233.001/5/20122012-9876

mysql group_concat 没有带来整个数据

我正在使用以下查询并利用group_concat函数。但是,有时answers列中的数据会被截断;这意味着我没有得到完整的数据,最后它只是被砍掉了。我怀疑它可能与数据类型有关....它可以转换为更大的数据类型吗?目前Other1数据类型是textselectSiteName,casewhengroup_concat(Other1)isnotnullthengroup_concat(cast(Other1ASBLOB))whengroup_concat(Other1)isnullthen'NoResponseprovided'end'answers'fromdisparities_com

MySQL:总 GROUP BY WITH ROLLUP 好奇心

我有两个问题。其中一个对我有意义,另一个对我没有意义。第一个:SELECTgenderAS'Gender',count(*)AS'#'FROMregistrationsGROUPBYgenderWITHROLLUP这给了我这个:Gender#Female20Male19NULL39所以,我得到了计数和总计数。我所期望的。下一个:SELECTc.printable_nameAS'Country',count(*)AS'#'FROMregistrationsrINNERJOINcountrycONr.country=c.country_idGROUPBYcountryWITHROLLUPC