!--a11y-->

ƒvƒƒOƒ‰ƒ€‚ÅA•W€ƒe[ƒuƒ‹‚Ü‚½‚̓nƒbƒVƒ…ƒe[ƒuƒ‹‚ðƒ\[ƒg‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·Bƒe[ƒuƒ‹‚ðƒe[ƒuƒ‹ƒL[‚Ń\[ƒg‚·‚é‚É‚ÍAˆÈ‰º‚Ì–½—ß‚ðŽg—p‚µ‚Ü‚·B
SORT <itab> [ASCENDING|DESCENDING] [AS TEXT] [STABLE].
‚±‚Ì–½—߂łÍA“à•”ƒe[ƒuƒ‹ <itab> ‚ªƒe[ƒuƒ‹ƒL[‚É‚æ‚Á‚ĸ‡‚Ń\[ƒg‚³‚ê‚Ü‚·B‚±‚Ì–½—ß‚ÍAí‚Ƀe[ƒuƒ‹Ž©‘̂ɓK—p‚³‚êAƒwƒbƒ_s‚ɂ͓K—p‚³‚ê‚Ü‚¹‚ñBƒ\[ƒg‡˜‚ÍA“à•”ƒe[ƒuƒ‹“à‚Ì•W€ƒL[€–ڂ̇˜‚É‚æ‚Á‚ÄŒˆ‚Ü‚è‚Ü‚·BƒfƒtƒHƒ‹ƒgƒL[‚̓e[ƒuƒ‹s‚Ì”ñ”’l€–Ú‚Å\¬‚³‚ê‚Ä‚¨‚èA‚»‚ê‚ç‚Ì€–Ú‚Í‚»‚ê‚炪oŒ»‚·‚釘‚Å•À‚ñ‚Å‚¢‚Ü‚·B
ƒIƒvƒVƒ‡ƒ“ ASCENDING ‚¨‚æ‚Ñ DESCENDING ‚ðŽg—p‚µ‚ÄAƒ\[ƒg‚Ì•ûŒü‚ðŽw’è‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·BƒfƒtƒHƒ‹ƒg‚͸‡‚Å‚·B
ƒ\[ƒgƒL[‚ª‘å‚«‚¢‚Ù‚ÇAƒe[ƒuƒ‹‚̃\[ƒg‚É•K—v‚ÈŽžŠÔ‚ª‘½‚‚È‚è‚Ü‚·Bƒ\[ƒgƒL[‚É“à•”ƒe[ƒuƒ‹‚ªŠÜ‚Ü‚ê‚Ä‚¢‚éꇂÍAƒ\[ƒgƒvƒƒZƒX‚Í‚©‚È‚è’x‚‚È‚è‚Ü‚·B
SORT –½—߂Ń\[ƒgƒe[ƒuƒ‹‚ðƒ\[ƒg‚·‚邱‚Ƃ͂ł«‚Ü‚¹‚ñBƒ\[ƒgƒe[ƒuƒ‹‚ÍAí‚ÉŽ©g‚̃\[ƒg‡˜‚É‚æ‚Á‚ÄŽ©“®“I‚ÉXV‚³‚ê‚Ü‚·B“à•”ƒe[ƒuƒ‹‚ªƒ\[ƒgƒe[ƒuƒ‹‚Æ‚µ‚ÄÓI‚É”Fޝ‚Å‚«‚éê‡ASORT –½—ß‚ðŽg—p‚·‚邯\•¶ƒGƒ‰[‚ª”¶‚µ‚Ü‚·Bƒe[ƒuƒ‹‚ªƒWƒFƒlƒŠƒbƒNƒ\[ƒgƒe[ƒuƒ‹‚Å‚ ‚éꇂÍAƒ\[ƒgƒL[‚ªƒe[ƒuƒ‹ƒL[‚Ìæ“ª‚Ì’Šo‚Æ“¯‚¶‚łȂ¢‚Æ‚«‚âA~‡‚Ń\[ƒg‚·‚é‚© AS TEXT ƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚µ‚½‚Æ‚«‚ÉASORT –½—߂ɂæ‚Á‚ÄŽÀsŽžƒGƒ‰[‚ª”¶‚µ‚Ü‚·B‚‚܂èASORT –½—ß‚ÍA“à•”ƒ\[ƒg‡˜‚Ɉᔽ‚µ‚Ä‚¢‚È‚¢ê‡‚ÉŒÀ‚Á‚ÄAƒWƒFƒlƒŠƒbƒN“à•”ƒe[ƒuƒ‹‚ɑ΂µ‚Ă̂ݎg—p‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B
\‘¢‰»‚³‚ꂽsƒf[ƒ^Œ^‚ðŽ‚Â“à•”ƒe[ƒuƒ‹‚ð•ʂ̃L[‚Ń\[ƒg‚µ‚½‚¢ê‡AˆÈ‰º‚̂悤‚É SORT –½—߂ł»‚̃L[‚ðŽw’è‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B
SORT <itab> [ASCENDING|DESCENDING] [AS TEXT] [STABLE]
BY
<f1> [ASCENDING|DESCENDING] [AS TEXT]
...
<fn> [ASCENDING|DESCENDING] [AS TEXT].
ƒe[ƒuƒ‹‚ÍAƒe[ƒuƒ‹ƒL[‚É‚æ‚Á‚Ăł͂ȂAŽw’肵‚½ƒRƒ“ƒ|[ƒlƒ“ƒg <f1> ... <fn> ‚É‚æ‚Á‚ă\[ƒg‚³‚ê‚Ü‚·Bƒ\[ƒg€–Ú‚Ì”‚ÍA250 ‚ɧŒÀ‚³‚ê‚Ü‚·Bƒ\[ƒg‡˜‚ÍA€–Ú <f i >. ‚̇˜‚É‚æ‚Á‚ÄŒˆ‚Ü‚è‚Ü‚·BBY ‚Ì‘O‚ÉŽw’肵‚½ƒ\[ƒg‡˜‚Í‚·‚ׂẰ–Ú‚É“K—p‚³‚ê‚Ü‚·B€–Ú‚ÌŒã‚ë‚̃\[ƒg‡˜‚ÍAƒe[ƒuƒ‹‚Ì—ñ‚ɂ̂ݓK—p‚³‚ê‚Ü‚·B
<fi> ‚Ì‘ã‚í‚è‚É(<f>) ‚ðŽw’肵‚ÄAƒ\[ƒg€–Ú‚ð“®“I‚ÉŽw’è‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B€–Ú <f> ‚Ì“à—e‚É‚æ‚Á‚ÄAƒ\[ƒg€–Ú‚Ì–¼‘O‚ªŒˆ’肳‚ê‚Ü‚·B–½—߂̎ÀsŽž‚É <f> ‚ª‹ó‚Å‚ ‚éꇂÍA‚»‚Ì€–ڂ̓\[ƒg‚Å–³Ž‹‚³‚ê‚Ü‚·B€–Ú‚É–³Œø‚ȃRƒ“ƒ|[ƒlƒ“ƒg–¼‚ªŠÜ‚Ü‚ê‚Ä‚¢‚éꇂÍAŽÀsŽžƒGƒ‰[‚ª”¶‚µ‚Ü‚·B
ASCENDING ƒIƒvƒVƒ‡ƒ“‚â DESCENDING ƒIƒvƒVƒ‡ƒ“‚̂ق©‚ÉAƒ\[ƒg‘S‘̂܂½‚ÍŠeƒ\[ƒg€–Ú‚ðƒAƒ‹ƒtƒ@ƒxƒbƒg‡‚É‚·‚邿‚¤‚ÉŽw’è‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B
SORT <itab> ...AS TEXT ... .
‚±‚̃IƒvƒVƒ‡ƒ“‚ÍA•¶Žš—ñ‚̃\[ƒg•û–@‚ɉe‹¿‚µ‚Ü‚·BƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚µ‚È‚¢‚ÆA•¶Žš—ñ‚̓n[ƒhƒEƒFƒAƒvƒ‰ƒbƒgƒtƒH[ƒ€‚É‚æ‚Á‚ÄŽw’肳‚ꂽ‡˜‚É]‚Á‚ă\[ƒg‚³‚ê‚Ü‚·BƒIƒvƒVƒ‡ƒ“ AS TEXT ‚ðŽg—p‚·‚邯A•¶Žš€–Ú‚ÍŒ»Ý‚̃eƒLƒXƒgŠÂ‹«‚É]‚Á‚ăAƒ‹ƒtƒ@ƒxƒbƒg‡‚Ƀ\[ƒg‚³‚ê‚Ü‚·BƒfƒtƒHƒ‹ƒg‚Å‚ÍAƒeƒLƒXƒgŠÂ‹«‚̓†[ƒUƒ}ƒXƒ^ƒŒƒR[ƒh‚Éݒ肳‚ê‚Ä‚¢‚Ü‚·B‚½‚¾‚µAˆÈ‰º‚Ì–½—ß‚ðŽg—p‚µ‚ăeƒLƒXƒgŠÂ‹«‚𖾎¦“I‚ÉÝ’è‚·‚邱‚Æ‚à‚Å‚«‚Ü‚·B
SET LOCALE LANGUAGE
AS TEXT ƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚·‚邯A•¶Žš—ñ‚ðƒ\[ƒg‰Â”\‚È‘Ž®‚ɕϊ·‚µ‚È‚‚Ä‚àς݂܂·B‚±‚̂悤‚ȕϊ·‚ÍAˆÈ‰º‚Ìꇂɂ̂ݕK—v‚Å‚·B
· “à•”ƒe[ƒuƒ‹‚ðƒAƒ‹ƒtƒ@ƒxƒbƒg‡‚Ń\[ƒg‚µ‚Ä‚©‚çƒoƒCƒiƒŠŒŸõ‚ðŽg—p‚·‚éê‡
· •¶Žš€–Ú‚ðƒL[‚Æ‚µ‚ÄŽg—p‚µ‚Ä“à•”ƒe[ƒuƒ‹‚ð•¡”‰ñă\[ƒg‚·‚éê‡ ( ‚±‚̂悤‚É‚·‚邯A•ÏŠ·‚ª1 ‰ñ‚µ‚©•K—v‚È‚‚Ȃ邽‚ß)
· ƒvƒƒOƒ‰ƒ€‚Ńf[ƒ^ƒx[ƒXƒe[ƒuƒ‹—p‚̃Aƒ‹ƒtƒ@ƒxƒbƒg‡‚Ìõˆø‚ð쬂·‚éê‡
AS TEXT ƒIƒvƒVƒ‡ƒ“‚ðƒ\[ƒg‘S‘̂ɓK—p‚µ‚½ê‡‚ÍAC Œ^‚̃\[ƒg€–ڂɂ̂݉e‹¿‚µ‚Ü‚·BAS TEXT ƒIƒvƒVƒ‡ƒ“‚ð’Pˆê‚̃\[ƒg€–Ú‚É“K—p‚·‚éꇂÍA‚»‚̃\[ƒg€–Ú‚Í C Œ^‚łȂ¯‚ê‚΂Ȃè‚Ü‚¹‚ñB
ƒIƒvƒVƒ‡ƒ“
SORT <itab> ... STABLE.
‚ðŽg—p‚·‚邯AˆÀ’肵‚½ƒ\[ƒg‚ðŽÀs‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B‚‚܂èAƒ\[ƒg‚É‚æ‚Á‚ĕω»‚µ‚È‚¢s‚Ì‘Š‘Î‡˜‚Í•ÏX‚³‚ê‚Ü‚¹‚ñBSTABLE ƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚µ‚È‚¢ê‡‚ÍAƒ\[ƒg‡˜‚͕ێ‚³‚ê‚Ü‚¹‚ñBƒe[ƒuƒ‹‚𓯈ê‚̃L[‚ʼn½‰ñ‚àƒ\[ƒg‚µ‚½ê‡Aƒe[ƒuƒ‹ƒGƒ“ƒgƒŠ‚̇˜‚̓\[ƒg‚²‚Ƃɕω»‚µ‚Ü‚·B‚½‚¾‚µAˆÀ’肵‚½ƒ\[ƒg‚ÍAˆÀ’肵‚È‚¢ƒ\[ƒg‚æ‚è‚àŽžŠÔ‚ª‚©‚©‚è‚Ü‚·B

DATA: BEGIN OF LINE,
LAND(3) TYPE C,
NAME(10) TYPE C,
AGE TYPE
I,
WEIGHT TYPE P
DECIMALS 2,
END OF LINE.
DATA ITAB LIKE STANDARD TABLE OF LINE WITH NON-UNIQUE KEY LAND.
LINE-LAND =
'G'. LINE-NAME = 'Hans'.
LINE-AGE =
20. LINE-WEIGHT = '80.00'.
APPEND LINE TO
ITAB.
LINE-LAND =
'USA'.LINE-NAME = 'Nancy'.
LINE-AGE =
35. LINE-WEIGHT = '45.00'.
APPEND LINE TO
ITAB.
LINE-LAND =
'USA'.LINE-NAME = 'Howard'.
LINE-AGE =
40. LINE-WEIGHT = '95.00'.
APPEND LINE TO
ITAB.
LINE-LAND =
'GB'. LINE-NAME = 'Jenny'.
LINE-AGE =
18. LINE-WEIGHT = '50.00'.
APPEND LINE TO
ITAB.
LINE-LAND =
'F'. LINE-NAME = 'Michele'.
LINE-AGE =
30. LINE-WEIGHT = '60.00'.
APPEND LINE TO
ITAB.
LINE-LAND =
'G'. LINE-NAME = 'Karl'.
LINE-AGE =
60. LINE-WEIGHT = '75.00'.
APPEND LINE TO
ITAB.
PERFORM LOOP_AT_ITAB.
SORT
ITAB.
PERFORM
LOOP_AT_ITAB.
SORT
ITAB.
PERFORM
LOOP_AT_ITAB.
SORT ITAB
STABLE.
PERFORM
LOOP_AT_ITAB.
SORT ITAB DESCENDING BY
LAND WEIGHT ASCENDING.
PERFORM
LOOP_AT_ITAB.
FORM
LOOP_AT_ITAB.
LOOP AT ITAB INTO LINE.
WRITE: / LINE-LAND, LINE-NAME, LINE-AGE, LINE-WEIGHT.
ENDLOOP.
SKIP.
ENDFORM.
o—͈͂ȉº‚̂悤‚ɂȂè‚Ü‚·B
G
Hans
20 80.00
USA
Nancy 35
45.00
USA
Howard
40 95.00
GB Jenny 18
50.00
F
Michele 30
60.00
G
Karl
60 75.00
F
Michele 30
60.00
G
Hans
20 80.00
G
Karl
60 75.00
GB Jenny 18
50.00
USA
Howard
40 95.00
USA
Nancy 35
45.00
F
Michele 30
60.00
G
Karl
60 75.00
G
Hans
20 80.00
GB Jenny 18
50.00
USA
Howard
40 95.00
USA
Nancy 35
45.00
F
Michele 30
60.00
G
Karl
60 75.00
G
Hans
20 80.00
GB Jenny 18
50.00
USA
Howard
40 95.00
USA
Nancy 35
45.00
USA
Nancy 35
45.00
USA
Howard
40 95.00
GB Jenny 18
50.00
G
Karl
60 75.00
G
Hans
20 80.00
F
Michele 30
60.00
‚±‚̃vƒƒOƒ‰ƒ€‚Å‚ÍA•W€ƒe[ƒuƒ‹‚ª 1 ‚‚̃L[€–Ú‚Å 4 ‰ñƒ\[ƒg‚³‚ê‚Ü‚·B‚Ü‚¸ASTABLE ƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚µ‚È‚¢‚ÅAƒL[€–Ú (LAND) ‚Å 2 ‰ñƒ\[ƒg‚³‚ê‚Ü‚·Bƒ\[ƒg‚͈À’肵‚Ä‚¢‚Ü‚¹‚ñB‘æ 2 s‚Æ‘æ 3 s‚̇˜‚ª•ω»‚µ‚Ä‚¢‚Ü‚·BŽŸ‚ÉASTABLE ƒIƒvƒVƒ‡ƒ“‚ðŽg—p‚µ‚Ä“¯‚¶ƒ\[ƒg‚ªŽÀs‚³‚ê‚Ü‚·Bƒ\[ƒg‚͈À’肵‚Ä‚¢‚Ü‚·Bs‚Í“¯‚¶‡˜‚ɕۂ½‚ê‚Ä‚¢‚Ü‚·BŽŸ‚ÉALAND ‚¨‚æ‚Ñ WEIGHT ‚Æ‚µ‚Ä’è‹`‚³‚ꂽƒ\[ƒgƒL[‚Ńe[ƒuƒ‹‚ªƒ\[ƒg‚³‚ê‚Ü‚·Bˆê”ʂ̃\[ƒg‡˜‚Í~‡‚Æ‚µ‚Ä’è‹`‚³‚ê‚Ü‚·‚ªAWEIGHT ‚Ìê‡Aƒ\[ƒg‡˜‚͸‡‚Æ‚µ‚Ä’è‹`‚³‚ê‚Ü‚·B

DATA: BEGIN OF LINE,
TEXT(6),
XTEXT(160) TYPE X,
END OF LINE.
DATA ITAB LIKE HASHED TABLE OF LINE WITH UNIQUE KEY TEXT.
LINE-TEXT =
'Muller'.
CONVERT TEXT LINE-TEXT
INTO SORTABLE CODE LINE-XTEXT.
INSERT LINE INTO TABLE
ITAB.
LINE-TEXT =
'Möller'.
CONVERT TEXT LINE-TEXT
INTO SORTABLE CODE LINE-XTEXT.
INSERT LINE INTO TABLE
ITAB.
LINE-TEXT =
'Moller'.
CONVERT TEXT LINE-TEXT
INTO SORTABLE CODE LINE-XTEXT.
INSERT LINE INTO TABLE
ITAB.
LINE-TEXT =
'Miller'.
CONVERT TEXT LINE-TEXT
INTO SORTABLE CODE LINE-XTEXT.
INSERT LINE INTO TABLE
ITAB.
SORT
ITAB.
PERFORM
LOOP_AT_ITAB.
SORT ITAB BY
XTEXT.
PERFORM
LOOP_AT_ITAB.
SORT ITAB AS
TEXT.
PERFORM
LOOP_AT_ITAB.
FORM LOOP_AT_ITAB.
LOOP AT
ITAB INTO LINE.
WRITE /
LINE-TEXT.
ENDLOOP.
SKIP.
ENDFORM.
‚±‚Ì—á‚ÍA•¶Žš€–ڂ̃Aƒ‹ƒtƒ@ƒxƒbƒg‡‚̃\[ƒg‚ðŽ¦‚µ‚Ä‚¢‚Ü‚·B“à•”ƒe[ƒuƒ‹ ITAB ‚É‚ÍAƒAƒ‹ƒtƒ@ƒxƒbƒg‡‚Ń\[ƒg‚Å‚«‚éA•¶Žš€–Ú‚ðŽ‚Â—ñ‚Æ‚»‚ê‚ɑΉž‚·‚éƒoƒCƒiƒŠƒR[ƒh‚ðŽ‚Â—ñ‚ªŠÜ‚Ü‚ê‚Ä‚¢‚Ü‚·BƒoƒCƒiƒŠƒR[ƒh‚ÍACONVERT –½—ß‚ðŽg—p‚µ‚Ä쬂³‚ê‚Ü‚· ( Úׂɂ‚¢‚Ä‚ÍAƒ\[ƒg‰Â”\‚È‘Ž®‚ւ̕ϊ·‚ðŽQÆ‚µ‚Ä‚‚¾‚³‚¢) Bƒe[ƒuƒ‹‚Í 3 ‰ñƒ\[ƒg‚³‚ê‚Ü‚·B1 ‰ñ–Ú‚ÍATEXT €–ڂŃoƒCƒiƒŠƒR[ƒh‡‚Ƀ\[ƒg‚³‚ê‚Ü‚·B2 ‰ñ–Ú‚ÍAXTEXT €–ڂŃoƒCƒiƒŠƒR[ƒh‡‚Ƀ\[ƒg‚³‚ê‚Ü‚·B3 ‰ñ–Ú‚ÍATEXT €–ڂŃAƒ‹ƒtƒ@ƒxƒbƒg‡‚Ƀ\[ƒg‚³‚ê‚Ü‚·B‰pŒê‚ł͓K؂ȗႪ‚È‚¢‚Ì‚ÅAƒhƒCƒcŒê‚̃eƒLƒXƒgŠÂ‹«‚ÌꇂÌo—Í‚ðˆÈ‰º‚ÉŽ¦‚µ‚Ü‚·B
Miller
Moller
Muller
Möller
Miller
Moller
Möller
Muller
Miller
Moller
Möller
Muller
1 ‰ñ–ڂ̃\[ƒg‚Ì‚ ‚ÆA'Möller' ‚ª 'Muller' ‚ÌŒã‚ë‚ɂȂÁ‚Ä‚¢‚Ü‚·B‚±‚ê‚ÍA•¶Žš 'ö' ‚Ì“à•”ƒR[ƒh‚ª 'u' ‚Ì“à•”ƒR[ƒh‚ÌŒã‚ë‚É‚ ‚邽‚߂ł·B2 ‰ñ–Ú‚Æ 3 ‰ñ–ڂ̃\[ƒgŒ‹‰Ê‚̓Aƒ‹ƒtƒ@ƒxƒbƒg‡‚ɂȂÁ‚Ä‚¢‚Ü‚·BXTEXT ‚É‚æ‚éƒoƒCƒiƒŠƒ\[ƒg‚ÌŒ‹‰Ê‚ÍA€–Ú TEXT ‚É‚æ‚éƒAƒ‹ƒtƒ@ƒxƒbƒg‡‚̃\[ƒg‚Æ“¯‚¶‚ɂȂè‚Ü‚·B