zOs/SQL/CATRUPD0

       -- show runstats values
       -- delete / update if necessary
set current path = OA1A     ;
with c as            --colGroupColNo is concat of smallint(colNo)
(                    --   but empty if only 1 column
                     --thus, make similar group for 1 column
                     --   and select last column name
  select
        case when length(colGroupColNo) > 1 then hex(colGroupColNo)
             else ( select hex(smallint(c.colNo))
                        from sysibm.sysColumns c
                        where c.tbCreator = b.tbOwner
                           and c.tbName   = b.tbName
                           and c.name     = b.name
             ) end cg,   -- colGroup in hex also for single column
        case when length(colGroupColNo) < 3 then name
             else ( select name
                        from sysibm.sysColumns c
                        where c.tbCreator = b.tbOwner
                            and c.tbName  = b.tbName
                            and hex(smallint(c.colNo))
                                = hex(right(b.colGroupColNo, 2))
             ) end cLa,  -- last column name
        tbOwner, tbName, name, colGroupColNo, type,
        count(*) cnt, max(cardf) card, max(frequencyF) freq,
        min(statsTime) minTst, max(statsTime) maxTst
    from sysibm.sysColDist b
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
    group by tbOwner, tbName, name, colGroupColNo, type
)
select substr(cLa, 1, 16) || substr(cg, 1, 34) "lastColumn      group",
        type, smallint(cnt) cnt,
        substr(fosFmte7(card), 1, 7) "maxCard",
        substr(fosFmte7(freq), 1, 7) "maxFreq",
        minTst "min statsTime",
        maxTst "max statsTime"
    from c
    order by tbOwner, tbName, cg || x'0000', type
;
select colCardf, statstime, c.*
    from sysibm.sysColumns c
    where tbCreator = 'OA1A' and tbName = 'TWM005A1'
;
select *
    from sysibm.sysColDist
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
;
select *
    from sysibm.sysColStats
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
;
select *
    from sysibm.sysColDistStats
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
;
select statstime, cardf, nPagesF, spacef, avgrowlen
    from sysibm.sysTables c
    where creator = 'OA1A' and name = 'TWM005A1'
;
select *
    from sysibm.sysTabStats
    where owner   = 'OA1A' and name = 'TWM005A1'
;;;;;
update sysibm.sysColumns set
       statstime = '0001-01-01-00.00.00.00000'
     , colCardf = -1
    where tbCreator = 'OA1A' and tbName = 'TWM005A1'
;
delete
    from sysibm.sysColStats
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
;
delete
    from sysibm.sysColDist d
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
;
select *
    from sysibm.sysColDist d
    where tbOwner = 'OA1A' and tbName = 'TWM005A1'
    order by type, frequencyf desc
;
rollback;
;;;
commit;
select date(statstime), count(*)
    from sysibm.sysTables
    where creator = 'OA1A'
    group by date(statstime)
    order by 1 desc
    ;;;;