📅  最后修改于: 2023-12-03 14:58:21.809000             🧑  作者: Mango
这道题是 GATE CS 2021 设置 2 第 31 题,考察关系型数据库设计和 SQL 查询。
给出一个通讯录表格,其中包含了以下字段:
id
:记录的唯一标识firstname
:姓名lastname
:姓氏email
:电子邮件地址phone
:电话号码address
:地址你需要设计数据库表格,并编写 SQL 查询语句,完成以下任务:
根据题目描述,我们需要设计一个包含上述字段的表格,并编写相应的 SQL 查询语句。
我们可以使用以下 SQL 语句创建表格:
CREATE TABLE addressbook (
id INTEGER PRIMARY KEY AUTOINCREMENT,
firstname TEXT,
lastname TEXT,
email TEXT,
phone TEXT,
address TEXT
);
其中 PRIMARY KEY
指定 id
为主键,并使用 AUTOINCREMENT
自增长。
使用以下 SQL 语句可以添加一条新记录:
INSERT INTO addressbook (firstname, lastname, email, phone, address)
VALUES ('John', 'Doe', 'john.doe@example.com', '+1-408-555-5555', '1600 Amphitheatre Parkway, Mountain View, CA 94043, USA');
这道题需要我们编写两个 SQL 查询语句。
查询姓氏为 "Doe" 的所有记录,并按照姓名的升序排序,可以使用以下 SQL 语句:
SELECT * FROM addressbook WHERE lastname = 'Doe' ORDER BY firstname ASC;
查询前 5 条记录,并按照记录唯一标识的降序排序,可以使用以下 SQL 语句:
SELECT * FROM addressbook ORDER BY id DESC LIMIT 5;
这道 GATE CS 2021 设置 2 第 31 题考察了关系型数据库设计和 SQL 查询相关的知识点。需要我们设计表格并编写相应的 SQL 查询语句来完成题目描述中给出的任务。