How Find out current Partition Range in Dynamic Partition Table in Teradata

Example 1:

select ResolvedCurrent_date,ConstraintText from DBC.PartitioningConstraintsV p

where p.databasename||'.'||p.tablename='ITCntlLoadReadyT.LR_DISTRIBUTION_EVENT_PIECE';

ResolvedCurrent_Date

2018-05-14

ConstraintText

CHECK (/*02 08 00*/ RANGE_N(Event_Dt_DD BETWEEN ((ADD_MONTHS((DATE ),(-24 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE ),(-24 ))))( TITLE 'Day')( TITLE 'Day')( TITLE 'Day')))- (((((ADD_MONTHS((DATE ),(-24 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE ),(-24 ))))( TITLE 'Day')( TITLE 'Day')( TITLE 'Day'))(DATE))- (10106 (DATE))) MOD 7 )- 1 ( TITLE 'DayOfWeek()')) AND (((ADD_MONTHS((DATE ),(2 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE ),(2 ))))( TITLE 'Day')( TITLE 'Day')))- (((((ADD_MONTHS((DATE ),(2 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE ),(2 ))))( TITLE 'Day')( TITLE 'Day'))(DATE))- (10106 (DATE))) MOD 7 )+ 1 ( TITLE 'DayOfWeek()')))+ 1 EACH INTERVAL '7' DAY ) /*1 130+3687873665275687*/ IS NOT NULL AND RANGE_N(Location_Seq_Num BETWEEN 1 AND 2500 EACH 1 ,

NO RANGE OR UNKNOWN) /*2 2501+0*/ IS NOT NULL)

Replace DATE with ReolvedCurrent_Date (Don't forget to replace "AND" with "," )

SELECT

((ADD_MONTHS((DATE '2018-05-14'),(-24 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE '2018-05-14'),(-24 ))))( TITLE 'Day')( TITLE 'Day')( TITLE 'Day')))- (((((ADD_MONTHS((DATE '2018-05-14'),(-24 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE '2018-05-14'),(-24 ))))( TITLE 'Day')( TITLE 'Day')( TITLE 'Day'))(DATE))- (10106 (DATE))) MOD 7 )- 1 ( TITLE 'DayOfWeek()'))

,

(((ADD_MONTHS((DATE '2018-05-14'),(2 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE '2018-05-14'),(2 ))))( TITLE 'Day')( TITLE 'Day')))- (((((ADD_MONTHS((DATE '2018-05-14'),(2 )))- (EXTRACT(DAY FROM (ADD_MONTHS((DATE '2018-05-14'),(2 ))))( TITLE 'Day')( TITLE 'Day'))(DATE))- (10106 (DATE))) MOD 7 )+ 1 ( TITLE 'DayOfWeek()')))+ 1;

((ADD_MONTHS(2018-05-14, -24)-Day)-DayOfWeek())

2016-04-25

(((ADD_MONTHS(2018-05-14, 2)-Day)-DayOfWeek())+1)

2018-06-24

Example 2:

select ResolvedCurrent_date,ConstraintText from DBC.PartitioningConstraintsV p

where p.databasename||'.'||p.tablename='ITADST.CL_BASKET_TOTAL_A';

ResolvedCurrent_Date

2018-05-01

ConstraintText

CHECK (/*02*/ RANGE_N(Tran_Dt BETWEEN ADD_MONTHS((DATE - (CAST(((EXTRACT(DAY FROM (DATE )))- 1 ) AS INTERVAL DAY(2)))),(-13 )) AND (ADD_MONTHS((DATE - (CAST(((EXTRACT(DAY FROM (DATE )))- 1 ) AS INTERVAL DAY(2)))),(1 )))- INTERVAL '1' DAY EACH INTERVAL '1' MONTH ) IS NOT NULL AND RANGE_N(Store_Seq_Num BETWEEN 1 AND 1000 EACH 1 , NO RANGE OR UNKNOWN) IS NOT NULL )

Replace DATE with ReolvedCurrent_Date (Don't forget to replace "AND" with "," )

SELECT

ADD_MONTHS((DATE '2018-05-01' - (CAST(((EXTRACT(DAY FROM (DATE '2018-05-01' )))- 1 ) AS INTERVAL DAY(2)))),(-13 ))

,

(ADD_MONTHS((DATE '2018-05-01' - (CAST(((EXTRACT(DAY FROM (DATE '2018-05-01' )))- 1 ) AS INTERVAL DAY(2)))),(1 )))- INTERVAL '1' DAY;

ADD_MONTHS((2018-05-01-(EXTRACT(DAY FROM 2018-05-01)-1)), -13)

2017-04-01

(ADD_MONTHS((2018-05-01-(EXTRACT(DAY FROM 2018-05-01)-1)), 1)- 1)

2018-05-31