Trong MySQL, ORD()
hàm trả về giá trị số của ký tự ngoài cùng bên trái của một chuỗi đã cho. Bạn cung cấp chuỗi làm đối số.
Nếu ký tự ngoài cùng bên trái là một ký tự nhiều byte, giá trị trả về được tính từ các giá trị số của các byte cấu thành của nó. Nếu ký tự ngoài cùng bên trái không phải là ký tự nhiều byte, giá trị trả về là mã ASCII của nó (là kết quả giống như khi sử dụng ASCII()
chức năng).
Cú pháp
Cú pháp như sau:
ORD(str)
Ở đâu str
là chuỗi mà bạn muốn có mã số của ký tự ngoài cùng bên trái.
Ví dụ 1 - Cách sử dụng cơ bản
Đây là một ví dụ để chứng minh.
SELECT ORD('MySQL');
Kết quả:
+----------------+ | ASCII('MySQL') | +----------------+ | 77 | +----------------+
Vì vậy, chúng ta có thể thấy rằng số cho chữ M là 77 . Đây chính xác là kết quả mà chúng tôi nhận được nếu sử dụng ASCII()
chức năng, bởi vì chữ cái M nằm trong phạm vi ASCII.
Dưới đây là một ví dụ với hai chức năng cạnh nhau:
SELECT ASCII('M'), ORD('M');
Kết quả:
+------------+----------+ | ASCII('M') | ORD('M') | +------------+----------+ | 77 | 77 | +------------+----------+
Ví dụ 2 - Ký tự Multibyte
Dưới đây là một ví dụ sử dụng các ký tự nhiều byte.
SELECT ORD('€'), ORD('á'), ORD('仮'), ORD('平'), ORD('✓');
Kết quả:
+------------+-----------+------------+------------+------------+ | ORD('€') | ORD('á') | ORD('仮') | ORD('平') | ORD('✓') | +------------+-----------+------------+------------+------------+ | 14844588 | 50081 | 14990254 | 15055283 | 14851219 | +------------+-----------+------------+------------+------------+
Ví dụ 2 - Phân biệt chữ hoa chữ thường
Các ký tự viết hoa có giá trị số khác với các ký tự viết thường của chúng. Ví dụ:
SELECT ORD('A'), ORD('a');
Kết quả:
+----------+----------+ | ORD('A') | ORD('a') | +----------+----------+ | 65 | 97 | +----------+----------+