0

我收到错误代码 1248,不知道为什么。提前致谢。

select substr(cbt,1,8) day, 
    max((delta_GTP_InDataPktGn+delta_GTP_OutDataPktGn))/900
from 
(
    select a.cbt, a.datetime, 
    a.GTP_InDataPktGn - b.GTP_InDataPktGn as delta_GTP_InDataPktGn,
    a.GTP_OutDataPktGn - b.GTP_OutDataPktGn as delta_GTP_OutDataPktGn

    from
        (   select cbt, STR_TO_DATE(substr(cbt,1,12),'%Y%m%d%H%i') as datetime, 
            GTP_InDataPktGn, 
            GTP_OutDataPktGn
            from sgsn_GTP 
        ) a

        right join 
        (
            select cbt, STR_TO_DATE(substr(cbt,1,12),'%Y%m%d%H%i') as datetime, 
            GTP_InDataPktGn, 
            GTP_OutDataPktGn
            from sgsn_GTP 
        ) 
     on a.datetime = addtime(b.datetime,"00:15:00")
) z

where z.cbt between 20130429000000 and 20130430980000
group by day
4

1 回答 1

2

错误 1248 是ER_DERIVED_MUST_HAVE_ALIAS每个派生表都必须有自己的别名”。

连接右侧的派生表没有别名:

    right join 
    (
        select cbt, STR_TO_DATE(substr(cbt,1,12),'%Y%m%d%H%i') as datetime, 
        GTP_InDataPktGn, 
        GTP_OutDataPktGn
        from sgsn_GTP 
    ) 
  --  ^ missing b
于 2013-07-18T08:40:29.583 回答