WITH ordered AS ( SELECT jcpart, jcpric, jcunit, jcvoll, ROW_NUMBER() OVER (PARTITION BY jcpart ORDER BY jcvoll) AS rn FROM cmsinterfacein.lgdat.iprcc WHERE jcplcd = 'FUCU' ), grouped AS ( SELECT o1.jcpart, o1.jcpric, o1.jcvoll AS from_volume, ISNULL(o2.jcvoll - 1, o1.jcvoll) AS to_volume -- next vol - 1 FROM ordered o1 LEFT JOIN ordered o2 ON o1.jcpart = o2.jcpart AND o1.rn + 1 = o2.rn AND o1.jcpric = o2.jcpric ) SELECT * FROM grouped ORDER BY jcpart, from_volume; SELECT * FROM cmsinterfacein.lgdat.iprcc WHERE jcplcd = 'NUEU' SELECT item, listcode, vol_uom, vb_f, vb_t, price FROM usmidsap02.ubm.rlarp.plcore_fullcode_ranged r