编写一个 MySQL 查询,其中记录的长度大于 1?


在这里,我们将使用 OCTET_LENGTH 来检查记录的长度,因为我们想要长度大于 1 的记录。我们首先创建一个表 -

mysql> create table DemoTable
(
   UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserName varchar(20),
   UserGender varchar(20)
);
Query OK, 0 rows affected (0.55 sec)

使用 insert 命令在表中插入一些记录 -

mysql> insert into DemoTable(UserName,UserGender) values('John','M');
Query OK, 1 row affected (0.82 sec)
mysql> insert into DemoTable(UserName,UserGender) values('Carol','Male');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable(UserName,UserGender) values('Mia','Female');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable(UserName,UserGender) values('Emma','F');
Query OK, 1 row affected (0.17 sec)

以下是对使用 select 语句显示表中所有记录的查询 -

mysql> select *from DemoTable;

这将产生以下输出 -

+--------+----------+------------+
| UserId | UserName | UserGender |
+--------+----------+------------+
| 1      | John     | M          |
| 2      | Carol    | Male       |
| 3      | Mia      | Female     |
| 4      | Emma     | F          |
+--------+----------+------------+
4 rows in set (0.00 sec)

以下是我们获取长度大于 1 的记录的查询。

mysql> select *from DemoTable where OCTET_LENGTH(UserGender) > 1;

这将产生以下输出 -

+--------+----------+------------+
| UserId | UserName | UserGender |
+--------+----------+------------+
| 2      | Carol    | Male       |
| 3      | Mia      | Female     |
+--------+----------+------------+
2 rows in set (0.00 sec)

更新于: 30-7-2019

253 次浏览

启动你的 职业

完成课程获得认证

开始吧
广告