SQLでは、char()は整数を文字に変換します(たとえば、char(101)は'e'を返します)。char()の逆関数は何ですか(たとえば、「e」を101に変換します)?
質問する
4992 次
2 に答える
8
ORD()
または、ただし、渡された文字列の最初の文字のみを処理するのに対し、数字のリストから文字列を作成できるため、ASCII()
厳密には逆ではありません。CHAR()
Michael Buen の回答によると、それORD()
は MySql のみであることに注意する価値がASCII()
ありますが、より広くサポートされていますが、マルチバイト文字は処理されません。
mysql> SELECT CHAR(104), ASCII('h'), ORD('h');
+-----------+------------+----------+
| CHAR(104) | ASCII('h') | ORD('h') |
+-----------+------------+----------+
| h | 104 | 104 |
+-----------+------------+----------+
于 2012-04-27T04:14:18.330 に答える
6
私は BluesRockAddict の回答に賛成しようとしていましたが、彼は回答を削除しましたが、それが最良の回答です。SQL Server、Oracle、Postgresql、そしてもちろん MySQL など、多くのプラットフォームで ASCII が動作します。
SELECT ASCII('e')
ORD は MySQL でのみ動作します
于 2012-04-27T04:21:49.710 に答える