编写一个 MySQL 查询,其中记录的长度大于 1?
mysqlmysqli database
在这里,我们将使用 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)