我有一张表格,其中记录了不同商店的开盘和关门时间。这是一个例子:
正如您所看到的,打开和关闭时间位于不同的行中。我需要将所有内容放在同一行中,并在最后创建一个新列,用于计算WORKSTATION_OPEN和WORKSTATION CLOSE之间的小时数。基本上我想要实现的是:
答案 0 :(得分:0)
你加入表自己,rtl_log_id我猜...
select
opentimes.datetime as open,
closetimes.datetime as close,
closetimes.datetime-opentimes.datetime as duration
from
(...) as opetimes,(...) as closetimes
where
opentimes.trans_typecode=OPEN
and closetimes.trans_typecode=CLOSE
and opentimes.rtl_log_id=close_times.rtl_log_id;
答案 1 :(得分:0)
您可以按rt_log_id或business_day进行分组,并在日期时间内执行group concat
。
然后你在mysql外面处理那个组合字符串。