[英]SELECT from sql 2 cols in 1 table group by date
我的 select 語句使用 1 個表中的 2 個列並按日期對數據進行分組時遇到了一些問題。 我擁有的數據喜歡這個屏幕:
我想要的結果是:
有人可以幫忙嗎?
您可以進行條件聚合:
select
date_format(date, '%Y-%m-01') date_month,
sum(`close` > `open`) uptime,
sum(`close` < `open`) downtime,
sum(`close` = `open`) equaltime
stock_id
from mytable
group by date_month, stock_id
請注意,我添加了一個額外的查詢 do count days where close
等於open
。
您可以使用right()
從日期中提取您需要的月份
select
right(date, 6) as month,
sum(case when change > 0 then 1 else 0 end) as up_times,
sum(case when change < 0 then 1 else 0 end) as down_times,
stock_id
from yourTable
group by
right(date, 6),
stock_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.