(7) 使用UNION关键字,完成查询:列出读者编号为3872-3423-001和3872-3423-006的借阅记录(读者姓名,图书名称),读者编号为3872-3423-001的记录在前,读者编号为3872-3423-006的记录在后。
时间: 2024-03-03 21:52:08 浏览: 154
假设借阅记录存储在名为borrow的表中,包含以下列:reader_id(读者编号)、book_name(图书名称)、borrow_date(借阅日期)。
要列出读者编号为3872-3423-001和3872-3423-006的借阅记录,可以使用UNION关键字,查询语句如下:
```
SELECT reader_id, book_name FROM borrow WHERE reader_id = '3872-3423-001'
UNION
SELECT reader_id, book_name FROM borrow WHERE reader_id = '3872-3423-006'
ORDER BY reader_id;
```
这个查询会先查询读者编号为'3872-3423-001'的借阅记录,然后查询读者编号为'3872-3423-006'的借阅记录。使用UNION关键字将两个结果集合并起来,并按照读者编号排序。注意,UNION操作会去除重复行,如果需要保留重复行,可以使用UNION ALL关键字。
如果需要显示读者姓名而不是读者编号,可以使用JOIN操作将borrow表和reader表关联起来,查询语句如下:
```
SELECT r.name, b.book_name
FROM borrow b
JOIN reader r ON b.reader_id = r.reader_id
WHERE b.reader_id IN ('3872-3423-001', '3872-3423-006')
ORDER BY b.reader_id;
```
这个查询会先根据读者编号查询借阅记录,然后使用JOIN操作将borrow表和reader表关联起来,获取读者姓名。最后按照读者编号排序。
阅读全文