【发布时间】:2013-05-22 10:20:45
【问题描述】:
假设我有一个 BOOK 表。
采用这种结构:
create table BOOK (
AUTHOR varchar2(100),
TITLE varchar2(100)
);
我想要做的是检查/(或计数,计数(*)= 1)是否存在作者='约翰史密斯'的书,以及是否存在由'约翰史密斯'撰写的书,以字母“T”。
我想出了两条 SQL 语句。
select count(1)
from BOOK
where AUTHOR = 'John Snow'
and rownum = 1
select count(1)
from BOOK
where AUTHOR = 'John Snow'
and TITLE like = 'T%'
and rownum = 1
我的问题是:有没有一种方法可以让我知道是否存在符合这种标准的书(我需要知道是否有约翰·斯诺(John Snow)的书以及他是否写过书名以字母开头的书T') 通过仅执行 1 个查询?这样执行这 1 个查询会比执行上面的 2 个查询更快吗?谢谢!
【问题讨论】:
-
sorry 但是我不明白如果我还给你 1 你怎么知道是 John 写的书的数量还是 john 写的以 T 开头的书的数量?
-
这样查询将返回 1 行 2 列。 I 列是 John Smith 所著的书籍数量,另一个是 John Smith 以“T”开头的书籍作者数量
标签: sql