【MySQL SUM在同一个表上有多个GROUP BY】教程文章相关的互联网学习教程文章

mysql – 在MariaDB中使用GROUP BY子句WITH ROLLUP的两个类似查询的工作差异【代码】

请帮助我理解为什么以下两个查询会返回不同的结果.查询的区别仅在于使用GROUP BY子句中的DATE_FORMAT函数. 查询1:SELECT DATE_FORMAT(T0.ET,'%Y/%m/%d %H%i'), SUM(T0.AT) FROM(SELECT TIMESTAMPADD(second,(SEQ -1)*300, STR_TO_DATE('20170809135000','%Y%m%d%H%i%s')) ET, 1 ATFROM SEQ_1_TO_10WHERE SEQ <= 5) T0group by T0.ET with rollup 结果1:'2017/08/09 1350', '1' '2017/08/09 1355', '1' '2017/08/09 1400', '1' '2...

在大型视图上选择MySQL GROUP BY或DISTINCT【代码】

考虑一个由几个表组成的视图……例如v_active_car,它由连接到车身,发动机,车轮和立体声的车辆组成.它可能看起来像这样: v_active_cars视图SELECT * FROM carINNER JOIN body ON car.body = body.body_idINNER JOIN engine ON car.engine = engine.engine_idINNER JOIN wheels ON car.wheels = wheels.wheels_idINNER JOIN stereo ON car.stereo = stereo.stereo_idWHERE car.active = 1AND engine.active = 1AND wheels.active = ...

mysql – 带有条件的SQL GROUP BY?【代码】

我正在尝试将名为“CLOUD”的表复制到名为“t1_temp”的新表,同时根据名为“tag”的列对行进行分组.但我希望只有“NeighborhoodID”列相同时才会发生这种情况. 我正在运行的查询是:INSERT INTO t1_temp (id, NeighborhoodID, power, tag) SELECT id, NeighborhoodID, SUM(power), tag FROM CLOUD GROUP BY tag ORDER BY NeighborhoodID例如: 第三个条目不应与第1个和第1个分组.第四个条目是因为“NeighborhoodID”不一样. 我希望...

mysql – Django聚合会产生过多的GROUP BY子句【代码】

我正在使用MySQL上的Django ORM进行一个非常简单的聚合,它正在生成一个包含数据字段的GROUP BY子句,该字段非常大,并且使查询速度减慢了100多倍. 以下是该模型的简化版本:class Document(models.Model):data = models.TextField()class Attachment(models.Model):document = models.ForeignKey(Document)我正在运行的查询:Document.objects.annotate(num_attachments=Count('attachment'))而SQL输出:SELECT`document_document`.`...

php – mysql group by table b,inner join table a for random【代码】

这是我的2个表,内部联接事件的id.我想做这件事: 在表b中,有10张专辑,我想随机拿出4张专辑.然后每张专辑选择一张唱片,该唱片是专辑中的随机位置. 这样我将得到4条记录(这4条记录没有重复的id),然后将这4条记录作为内部联接查询,从表a中获取标题. 这里只有很少的记录供测试.事实上,表a中有300,000条记录,表b中有2,000,000条记录. 表a+-----+-------+ | id | title | +-----+-------+ | 1 | a1 | +-----+-------+ | 2 | a2 ...

mysql – COUNT(table_name.column_name)没有给出准确的计数.我在错误的列上应用GROUP BY吗?【代码】

我有一个有点复杂的数据库结构运行跟踪产品.以下是MySQL Workbench生成的图表: 在这种结构下,我有3个产品,我已添加.所有这三种产品都具有属性颜色和红色选项.我在这里设置了一个sql小提琴:http://sqlfiddle.com/#!2/68470/4显示一个查询我正在运行试图让opt_count列在属性列为彩色且选项列为红色的行上说3. 几乎所有其他opt_count值也是错误的,所以我怀疑我要么没有按正确的列分组,要么我正在接近整个问题. 如何为每行显示正确的...

MYSQL GROUP BY MAX得分【代码】

我有一个名为score的表,其中包含列 如何选择哪个id_team是每场比赛的最佳得分手 我试着用这个,但那不是正确的结果SELECT MAX( score ) , id_team FROM scores GROUP BY `id_game` LIMIT 0 , 30解决方法:您可以使用自我加入来找出具有最高分数的游戏的正确团队IDSELECT s.* FROM scores s JOIN ( SELECT MAX(score) score, id_game FROM scores GROUP BY id_game ) ss USING(score ,id_game ) LIMIT 0 , 30

使用group by优化MySQL范围查询【代码】

我有一张桌子,上面有每天的温度(巨大的桌子)和一张有周期开始和结束日期的桌子(小桌子).现在我想知道每个时期的平均温度,但查询需要很长时间.可以改进吗? 注意:升级到版本5.6.19-1~exp1ubuntu2后,长响应时间消失,并且可能是由5.6.8之前的MySQL版本中的错误引起的(请参阅Quassnoi的评论) 要使用随机数据重建日期和期间表:create table days (day int not null auto_increment primary key,temperature float not null);insert in...

mysql – 选择max,group by并显示不在group by子句中的其他列【代码】

为了简短起见,我在网上找到了一个教程并按照这一点进行操作:http://www.tizag.com/mysqlTutorial/mysqlmax.phpSELECT type, MAX(price) FROM products GROUP BY type我的问题是:我如何回应哪种“衣服”最贵(在这种情况下是“衬衫”)? 更新: 对不起伙计们,我的坏人.我需要让自己更清楚.我正在寻找的是一个解决方案,显示每个“名称”最昂贵的地方:name type priceClothing Blouse 34.97Toy P...

MySQl GROUP BY和ORDER BY没有做我想要的【代码】

我想在对它们进行分组之前对结果进行排序,但我似乎无法完成它. 我有这个问题:SELECT DISTINCTproduct.id,product_number_value.att_value AS product_number,color_number_value.option_code AS color_number,size_value.option_code AS size_code,size_value.option_position AS size_position FROMproduct INNER JOIN product_attribute_relational AS product_number_relational ON product_number_relational.product_id = pr...

MySQL SELECT n基于GROUP BY记录【代码】

可以说我有SQL记录:Country | Number USA | 300 USA | 450 USA | 500 USA | 100 UK | 300 UK | 400 UK | 1000我正在做这样的事情:SELECT * FROM table GROUP BY Country.如果,我想选择仅在每个国家/地区显示2个最大数字的结果,该怎么办?我该如何存档? 结果将是:Country | Number USA | 450 USA | 500 UK | 400 UK | 1000解决方法:样本数据create table data (Country varchar(10), Number int); insert into data select...

MySQL GROUP BY来自不同表的多个列【代码】

我有以下表格布局:Table Data +----------+-------------------------+ | Field | Type | +----------+-------------------------+ | type | enum('type_b','type_a') | | type_id | int(11) unsigned | | data | bigint(20) unsigned | +----------+-------------------------+Table A and B:+--------------+------------------+ | Field | Type | +------------...

MySQL查询的GROUP BY部分中的布尔逻辑【代码】

我目前有一个客户表,其中包含重复的客户.我想选择一个独特的客户列表,没有重复的家庭电话或手机. 因此,如果任何客户拥有与另一个客户相同的家庭电话或手机,那么我不想从查询中返回该客户. 一个警告 – 如果家用电话或手机是空的,那么我显然不想在反复制逻辑中计算它,因为有些客户只有家用电话,或者只有手机. 这是我当前的查询,它返回家庭电话和手机的唯一行.SELECT id, firstname, lastname, homephone, cellphone, city, state, z...

无法使用MySQL中的某些GROUP BY条件对AVG值进行ORDER BY【代码】

我有一个表data_summaries.它有诸如item_id INT(11),user_grouping TEXT和值DECIMAL(10,2)之类的列. 如果我尝试通过user_grouping对结果进行分组并按AVG值对它们进行排序,则会失败:SELECT user_grouping, AVG(value) AS avg_value, SUM(value) AS sum_value FROM data_summaries GROUP BY user_grouping ORDER BY avg_value +---------------+-----------+-----------+ | user_grouping | avg_value | sum_value | +-------------...

mysql – 在Group by Clause中使用正则表达式【代码】

我有一张桌子’物品’Item_Code |Rate |Quantity -------------------------------------- JOGGER-POWER-BLACK |699 |5 JOGGER-POWER-WHITE |599 |8 JOGGER-PLAZA-WHITE |1199 |2 SLEEPER-PLAZA-BLACK |699 |6 SLEEPER-POWER-BLACK |499 |5 我想分组Part1 – % – Item_Code的第3部分,如下所示,这只是想法select (part1 and part3 of Item_Code) as 'Category-Color',sum(Quantity) as ...