我试图按GROUP_CONCAT上的MYSQL请求进行分组。由这个GROUP_CONCAT生成的三个值是唯一的唯一标识符,我必须描述要应用这个组的组。
当我做以下事情时:
SELECT [...] GROUP_CONCAT(DISTINCT xxx) as supsku
[...]
GROUP BY supsku
上面写着:
不能在“supsku”上分组
非常感谢
我正在使用SSRS 2008R2中的Matrix控件,并且正在尝试为我的列分组创建总计。下面是我的Matrix布局的示例:
January February March TOTALS
2011 2012 2011 2012 2011 2012 2011 2012
我的问题是,如何让totals列按照上面的说明发挥作用?报告将默认为本年度与上一年度的比较。另外一个问题是,如果我有好几年的时间呢?我如何才能按年获得列总数?例如:
January
我试图得到两列,frequency和frequency - min(frequency),但是我看到的第二列是0。有什么可能是错的?
SELECT
frequency, frequency - min(frequency)
FROM
words
GROUP BY id
ORDER BY frequency;
Declare @region as nvarchar(30)
Set @region = 'Region'
select SUM([Units_Sold])
from Table1
group by @region, Year
Region和Year是列,我必须遍历多个列并替换@region的值,
但它显示出错误
每个组按表达式必须至少包含一个不是外部引用的列。
我们会非常感谢你的帮助。
我试图按几个专栏分组,包括一个每月和一年的摘录专栏。sql始终按原始日期列返回组。如何提取日期到月份和年份,然后在本专栏中分组。下面是我的完整sql:
select Name,
extract(month from fill_Date) as Month,
extract(year from fill_Date) as Year,
sum(quantity)
from Table A
group by Name,fill_Date
我的表里有5列
Name, UserID, Depertment, JobCode, Template
我想找到Count(Template) Group By Department and JobCode,但也想选择其他列。
我的问题是:
Select UserID, Department, JobCode, Template, Count(Template)
From MyTable
Group By Department, JobCode
获取错误:
UserID在选择列表中无效,因为它不在“组按列表”中。
INSERT INTO `new_table`(Apple, orange, banana)
SELECT * FROM `old_table`;
这就是我尝试过的。旧表有苹果,橙子,香蕉和新表有苹果,橙子,香蕉,葡萄,但更多的水果可以添加为列。(调度查询和添加字段作为列)。因此,我希望在每次执行查询时都将结果附加到正确的相应列下。我想知道是否可以从'old_table‘插入数据到'new_table’。使用这种当前的方法,这是静态的,我们可以根据另一个表的模式向另一个表插入值。我试过这样做,以便它保持动态,但这种语法是不可接受的。我认为的另一种方法是在每次运行后将列的名称保存
所以,我在为我的公司做库存工作。我们在Access中设置了以下查询:
预测产品QTY(按预测日期分列)
产品积压QTY(按装船日期分列)
我需要的是一个具有以下列标题的查询:
Date || Part Number || Forecast QTY || Backlog QTY || Max Value
但是我遇到了一个问题,因为预测日期和Ship Date是两个不相关的日期,所以我的查询要么不显示结果,要么重复结果。(如果我将日期联系起来,则没有结果,如果没有,则重复)。
在理想情况下,我将有以下两个初始查询和以下摘要查询:
待定查询
Ship Date |
我正在编写一个查询,其中我对选择的行进行分组,以找到其中一列的最小值。
我还想返回与返回的最小行相关的其他列值。
e.g
ID QTY PRODUCT TYPE
--------------------
1 2 Orange Fruit
2 4 Banana Fruit
3 3 Apple Fruit
如果我按“TYPE”列对此表进行分组,并选择最小数量,它将不会返回最小行的相应产品,在上面的例子中是“Apple”。
在分组之前添加ORDER BY子句似乎可以解决这个问题。但是,在我继续在我的应用程序中包含这个查询之前,我只想知道这个方法是否总是返回正确的值。这是正确
我的问题如下:
SELECT
concat (dummy1,dummy2) as dummydata,
COUNT(*) as countdata
FROM events TIMESTAMP BY EventEnqueuedUtcTime
GROUP BY HoppingWindow(second,10,5), dummydata
这会产生一个错误:列'dummy1‘在select列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。
我不希望按单个列( dummy1或dummy2 )分组,而是使用取
我如何按名称分组,然后按最老日期进行排序?有些名称有多个日期,因此我希望先保留最老的日期,并取消与该名称关联的任何其他日期。
A 1/1/2016
C 8/5/2017
B 10/2/2017
C 5/6/2017
A 10/6/2012
B 5/15/2013
A 2/5/2017
B 4/6/2017
我尝试为每个名称和日期创建一个组,然后按升序排序。但是,当我将第2组:Date放在第1组:Name上时,名称不再分组。
我有一个sql查询,它生成以下表格,但我希望能够获得按类别分组的标记列的总数:
代码如下:
select pic.Name as Category,
pis.Code as Code,
pis.Name as Issue,
count(it.ID) as 'total count',
sum(mc.ots) as 'Imps',
sum(case when ito.rating <50 then 1 else 0 end) as 'unfav count',
sum(case when ito.Rating =50 then 1
**Example Raw Data:**
Client ID Client Plan ID
========= ========
1 11
1 12
1 13
2 14
2 15
**Desired Result:**
Client ID Client Plan ID 1 Client Plan ID 2 Client Plan ID 3
========= ========