【问题标题】:interval statistic with month name column带有月份名称列的间隔统计
【发布时间】:2016-02-08 16:16:38
【问题描述】:

上次我使用了间隔,但我认为它不像我想要的那样工作, 我只想声明年份和月份。有哪位大师可以在这里教我吗?

这是作为请求的示例数据:

food_type | sales | date_sales
   pizza     buy     02-01-2015 12:00:00
   pizza     buy     02-01-2015 03:00:00
   pizza     sell     03-01-2015 01:00:00
   pizza     sell     04-01-2015 05:00:00
   pizza     buy     05-01-2015 02:00:00

这是我正在尝试做的示例

DECLARE @Startdate AS datetime = '02-01-2015',
 @Enddate AS datetime = '05-01-2015'


SELECT TYPE_FOOD, COUNT(CASE WHEN STATUS = 'BUY' THEN 1 END) AS [INCOMING], COUNT(CASE WHEN STATUS= 'SELL' THEN 1 END) AS [OUTGOING]
FROM Shop WHERE [Something_Date] BETWEEN @StartDate AND @EndDate

SELECT TYPE_FOOD, COUNT(CASE WHEN STATUS = 'BUY' THEN 1 END) AS [INCOMING], COUNT(CASE WHEN STATUS= 'SELL' THEN 1 END) AS [OUTGOING],DATEDIFF(MONTH, DATE_OF_PURCHASE, @YEAR ) AS [YEAR]  
FROM Shop 
GROUP BY TYPE_FOOD, DATEDIFF(MONTH,DATE_OF_PURCHASE, @YEAR )

-- 我不能使用 datediff,因为我想在日期之间..

如果使用datediff,这是我能得到的最接近的查询...不再是一年了...

Food TYPE | MONTH | BUY | SELL 
 pizza       12     10     5       
 pizza       13      3     1       
 ....        ...     ..     ..     
 pizza       32     5      2        

我怎样才能使sql输出像这样:

Food TYPE | MONTH   |   BUY | SELL | 
 pizza       Feb-15     10    5        
 pizza       Mar-15     3     1       
 ....        ...       ..     ..     
 pizza       May-15     5     2   

请高手帮帮我,我还是个sql初学者

【问题讨论】:

  • 能否请您添加一些示例数据
  • @TheGameiswar 好的,我添加了一些示例
  • 是的,在月份的倒数内@TheGameiswar
  • 没有人能回答我吗?很难吗?

标签: mysql sql sql-server-2008


【解决方案1】:

我认为您需要按 type_food 进行总和和分组

 select TYPE_FOOD, date_format(date_sales, '%m -  %Y'),
 sum(case when sales = 'buy' then 1 else 0 end) as incoming,
 sum(case when sales = 'sell' then 1 else 0 end) as outgoing
 from shop
 group by type_food

【讨论】:

  • 我使用 sql server 2008,我不能使用 date_form,是不是像 datepart 一样? @scaisEdge
  • 对不起,但是在你的标签中有 mysql .. 我认为等价的是 FORMAT(yourdate, 'dd/MM/yyyy', 'en-US')
猜你喜欢
  • 2017-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多