EXISTS 运算符用于判断查询子句是否有记录,如果有一条或多条记录存在返回 True,否则返回 False。
SELECT column_name(s)
FROM table_name
WHERE EXISTS
(SELECT column_name FROM table_name WHERE condition);
--建立学生表
create table s_student (
id number not null,
name varchar2(30),
sex varchar2(5),
age number(5),
addr varchar2(30)
);
---插入数据
ID NAME SEX AGE ADDR
1101 叶楚枫 男 14 上海
1102 季毅轩 女 18 北京
1103 舒言 男 22 广州
1104 欧阳昔 女 14 上海
1105 楚天翼 男 17 北京
1106 乐菱 女 12 广州
1107 梦琪 男 13 广州
1108 之桃 女 19 上海
--建立分数表
create table s_score (
id number not null,
subject varchar2(16),
score number(5)
);
--向分数表插入数据
SELECT a.*,rowid FROM s_score a;
ID SUBJECT SCORE
1101 语文 23
1101 数学 56
1102 数学 58
1102 语文 46
1103 数学 29
1103 语文 89
1104 语文 77
1104 数学 98
1105 语文 64
1105 数学 78
1106 语文 87
1106 数学 35
1107 语文 32
1107 数学 44
1108 数学 78
1108 语文 78
--实例1
SELECT *
FROM s_student a
WHERE EXISTS (SELECT b.score FROM s_score b
WHERE b.id = a.id AND b.score > 80);
--实例2
SELECT *
FROM s_student a
WHERE NOT EXISTS (SELECT b.score FROM s_score b
WHERE b.id = a.id AND b.score > 80);
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。