ASCII: function converts a single character to its corresponding ASCII code.
[@more@]| CHAR | ASCII | CHAR | ASCII | CHAR | ASCII |
|---|---|---|---|---|---|
| Null | 0 | + | 43 | V | 86 |
| Start of Heading | 1 | ' | 44 | W | 87 |
| Start of Text | 2 | - | 45 | X | 88 |
| End of Text | 3 | . | 46 | Y | 89 |
| End of Transmission | 4 | / | 47 | Z | 90 |
| Enquiry | 5 | 0 | 48 | [ | 91 |
| Acknowledge | 6 | 1 | 49 | / | 92 |
| Bell | 7 | 2 | 50 | ] | 93 |
| Backspace | 8 | 3 | 51 | ^ | 94 |
| Tab | 9 | 4 | 52 | _ | 95 |
| Line Feed | 10 | 5 | 53 | ` | 96 |
| Vertical Tab | 11 | 6 | 54 | a | 97 |
| Form Feed | 12 | 7 | 55 | b | 98 |
| Carriage Return | 13 | 8 | 56 | c | 99 |
| Shift Out | 14 | 9 | 57 | d | 100 |
| Shift In | 15 | : | 58 | e | 101 |
| Data Link Escape | 16 | ; | 59 | f | 102 |
| Device Control 1 | 17 | < | 60 | g | 103 |
| Device Control 2 | 18 | = | 61 | h | 104 |
| Device Control 3 | 19 | > | 62 | i | 105 |
| Device Control 4 | 20 | ? | 63 | j | 106 |
| Negative Acknowledge | 21 | @ | 64 | k | 107 |
| Synchronous Idle | 22 | A | 65 | l | 108 |
| End Transmission Block | 23 | B | 66 | m | 109 |
| Cancel | 24 | C | 67 | n | 110 |
| End of Medium | 25 | D | 68 | o | 111 |
| Substitute (EOF) | 26 | E | 69 | p | 112 |
| Escape | 27 | F | 70 | q | 113 |
| File Separator | 28 | G | 71 | r | 114 |
| Group Separator | 29 | H | 72 | s | 115 |
| Record Separator | 30 | I | 73 | t | 116 |
| Unit Separator | 31 | J | 74 | u | 117 |
| Space | 32 | K | 75 | v | 118 |
| ! | 33 | L | 76 | w | 119 |
| " | 34 | M | 77 | x | 120 |
| # | 35 | N | 78 | y | 121 |
| $ | 36 | O | 79 | z | 122 |
| % | 37 | P | 80 | { | 123 |
| & | 38 | Q | 81 | | | 124 |
| ' | 39 | R | 82 | } | 125 |
| ( | 40 | S | 83 | ~ | 126 |
| ( | 40 | S | 83 | ~ | 126 |
| ) | 41 | T | 84 | ||
| * | 42 | U | 85 |
SQL> select ASCII('a') from dual;
ASCII('A')
----------
97
SQL> select ASCII('Account') from dual;
ASCII('ACCOUNT')
----------------
65
SQL> select ASCII('A') from dual;
ASCII('A')
----------
65
now the fun part:
SQL> select
2 REPLACE
3 (CAST(ASCII(SUBSTR('abcdefghijklm' ,3 , 1)) AS CHAR(3))||
4 CAST(ASCII(SUBSTR('abcdefghijklm' ,4 , 1)) AS CHAR(3))||
CAST(ASCII(SUBSTR('abcdefghijklm' ,5 , 1)) AS CHAR(3))||
5 6 CAST(ASCII(SUBSTR('abcdefghijklm' , 6 , 1)) AS CHAR(3))||
CAST(ASCII(SUBSTR('abcdefghijklm' , 7 , 1)) AS CHAR(3))||
7 8 CAST(ASCII(SUBSTR('abcdefghijklm' , 8 , 1)) AS CHAR(3))||
9 CAST(ASCII(SUBSTR('abcdefghijklm' , 9 , 1)) AS CHAR(3))||
10 CAST(ASCII(SUBSTR('abcdefghijklm' , 10 , 1)) AS CHAR(3))||
11 CAST(ASCII(SUBSTR('abcdefghijklm' , 11 , 1)) AS CHAR(3))||
12 CAST(ASCII(SUBSTR('abcdefghijklm' , 12 , 1)) AS CHAR(3))
13 ,' ' ,'')
14 from dual;
REPLACE(CAST(ASCII(SUBSTR('ABC
------------------------------
99100101102103104105106107108