SQL ASCII() 函数

SQL ASCII() 函数

SQL ASCII() 函数根据ASCII字符集中字符的代码点返回字符字符串中第一个字符的十进制表示。

ASCII函数接受一个任意字符数据类型的参数。根据参数的第一个字符返回一个整数值。

如果参数为NULL或参数为一个空字符串,ASCII函数将返回NULL。我们还可以在SQL表中的字符串字段中使用ASCII函数。

注意 − 大写字母(A到Z)的ASCII值为65到90。小写字母(a到z)的ASCII值为97到122。

以下是SQL ASCII() 函数的语法 −

SELECT ASCII (expr);

参数

  • expr - 它可以是字符串或字符值。

返回值

它返回字符的ASCII值或字符串中最左边的字符。

示例

下面的SELECT查询显示给定字符串的第一个字符的SQL ASCII 值。

SELECT ASCII ("SQL stands for Structured Query Language") AS ASCII_S;

输出

以下是上述查询的输出:

+---------+
| ASCII_S |
+---------+
|      83 |
+---------+

在上述数据中,字符串是“SQL stands for Structured Query Language”,第一个字符是大写字母“S”,该字母的ASCII值为83。因此,查询显示了相同的值。

示例

以下SELECT查询显示了我们给定字符串的 ASCII 值。

select ASCII ("Kaushik");

输出

上述SQL查询产生以下输出-

+-------------------+
| ASCII ("Kaushik") |
+-------------------+
|                75 |
+-------------------+

在上面我们知道ASCII表示第一个字符的表示方法。所以,即使我们不是字符串的指定字符,它也会将字符串字符的输出显示为ASCII值。

示例

以下SELECT查询显示了字符’B’的 ASCII 值。

SELECT ASCII("B");

输出

在执行上述查询时,将产生以下输出:

+------------+
| ASCII("B") |
+------------+
|         66 |
+------------+

在上面的查询中,我们直接传递了ASCII值的字符。

示例

您可以将表列作为参数传递给 ASCII() 函数,将字符或字符串转换为 ASCII 值。假设我们使用以下 CREATE 语句创建了一个名为Customers的表 –

create table CUSTOMERS(
   ID INT NOT NULL, 
   NAME VARCHAR(15) NOT NULL, 
   AGE INT NOT NULL, 
   ADDRESS CHAR(25), 
   SALARY DECIMAL(10, 4), PRIMARY KEY(ID)
);

现在让我们使用以下的INSERT语句将 条记录插入到customers表中:

insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(1, 'Ramesh', 32, 'Ahmedabad', 2000.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(2, 'Khilan', 25, 'Delhi', 1500.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(3, 'kaushik', 23, 'Kota', 2000.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(4, 'Chaitali', 25, 'Mumbai', 6500.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(5, 'Hardik', 27, 'Bhopal', 8500.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(6, 'Komal', 22, 'MP', 4500.00);
insert INTO CUSTOMERS(ID, NAME, AGE, ADDRESS, SALARY) VALUES(7, 'Muffy', 24, 'Indore', 10000.00);

下面的查询显示表中 NAME 列的第一个或最左边字符的 ASCII 值。

SELECT NAME, ASCII(NAME) As ASCIIvalue from CUSTOMERS;

输出

在执行上面的语句后,它产生如下输出 –

+----------+------------+
| NAME     | ASCIIvalue |
+----------+------------+
| Ramesh   |         82 |
| Khilan   |         75 |
| kaushik  |        107 |
| Chaitali |         67 |
| Hardik   |         72 |
| Komal    |         75 |
| Muffy    |         77 |
+----------+------------+

示例

下面的SELECT查询使用ASCII函数,针对上面CUSTOMERS表中年龄大于24的客户的NAME和ADDRESS列。

SELECT ID, NAME, ASCII(NAME), ADDRESS, ASCII(ADDRESS) FROM CUSTOMERS WHERE AGE > 24;

输出

执行以上语句后,将产生以下输出:-

+----+----------+-------------+-----------+----------------+
| ID | NAME     | ASCII(NAME) | ADDRESS   | ASCII(ADDRESS) |
+----+----------+-------------+-----------+----------------+
|  1 | Ramesh   |          82 | Ahmedabad |             65 |
|  2 | Khilan   |          75 | Delhi     |             68 |
|  4 | Chaitali |          67 | Mumbai    |             77 |
|  5 | Hardik   |          72 | Bhopal    |             66 |
+----+----------+-------------+-----------+----------------+

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程