使用单个 MySQL 查询中的两个 SELECT 语句,返回在某个字段中没有值的记录
为此,可以使用 WHERE 子句和子查询。我们首先创建一个表 -
mysql> create table DemoTable1840
(
UserName varchar(20),
UserType ENUM('GUEST','ADMIN')
);
Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录 -
mysql> insert into DemoTable1840 values('Chris','Admin');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1840 values('David','Guest');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1840 values('Chris','Guest');
Query OK, 1 row affected (0.00 sec)使用 select 语句显示表中的所有记录 -
mysql> select * from DemoTable1840;
这将生成以下输出 -
+----------+----------+ | UserName | UserType | +----------+----------+ | Chris | ADMIN | | David | GUEST | | Chris | GUEST | +----------+----------+ 3 rows in set (0.00 sec)
以下是如何在某个字段中没有值的记录的查询
mysql> select UserName from DemoTable1840 where UserName NOT IN(select UserName from DemoTable1840 where UserType='Admin');
这将生成以下输出 -
+----------+ | UserName | +----------+ | David | +----------+ 1 row in set (0.00 sec)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP