0

I am getting an error code 1248 and have no idea why. Thanks in advance.

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
Mahmoud Gamal
  • 78,257
  • 17
  • 139
  • 164
il-fox
  • 75
  • 2
  • 8

1 Answers1

2

Error 1248 is ER_DERIVED_MUST_HAVE_ALIAS, "Every derived table must have its own alias".

The derived table on the right of your join has no 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
eggyal
  • 122,705
  • 18
  • 212
  • 237