Using the format 2 SORT statement to sort a table
It is recommended to use the format 2 SORT
statement to sort a table. It
provides the following benefits when compared to the format 1 SORT
statement.
Characteristics | Format 1 SORT statements |
Format 2 SORT statements |
---|---|---|
Can be used to sort a file or a table | Yes | No, it is for tables only |
Requires DFSORT or equivalent sorting program | Yes | No |
Supported in CICS® | Limited | Yes |
Supported in UNIX System Services | No | Yes |
Table can be sorted by using a single SORT statement, which
simplifies coding |
No, it requires the SELECT clauses, SD
entries with record descriptions, and input and output procedures |
Yes |
Keys for sorting can be specified as part of the table definition, which can
also be used in the SEARCH ALL statement |
No, keys must be specified in the SORT statement. If the
table is to be searched by using SEARCH ALL as well, the keys must also be
redundantly specified as part of the table definition. |
Yes, and it also supports specifying keys in the SORT
statement if needed |
Can filter or preprocess table elements during the sorting process | Yes, using input and output procedures | No, all of the table elements are passed to SORT
as-is |
Uses special registers that include SORT-CONTROL ,
SORT-CORE-SIZE , SORT-FILE-SIZE , SORT-MESSAGE ,
SORT-MODE-SIZE , and SORT-RETURN |
Yes | No |
Can be executed within the range of an input or output procedure | No | Yes |
Note: Do not use the format 2
SORT
with large tables in an environment
where storage is constrained, because the format 2 SORT
uses heap storage to do the
sort.