数据库(5)- sql练习

这篇博客通过实例介绍了如何新建数据库和表格,插入、查询数据,使用别名,条件筛选,以及处理NULL值。此外,还涉及了SQL进阶操作,如添加约束、统计分析、修改表结构等。
摘要由CSDN通过智能技术生成
  1. 新建一个数据库

    IF DB_ID (N'SQL学习') IS NOT NULL 
      	DROP database SQL学习
    create database SQL学习;
    
  2. 新建一张表:软件测试考试分数表

    注:在创建表时,我们可以在字段后添加各种约束,但一般不这样混用,推荐将添加约束和建表的语句分开编写。具体见 ## 进阶

    use SQL学习;
    IF object_id('软件测试考试分数表') is not null
    	drop table 软件测试考试分数表
    create table 软件测试考试分数表(
        Id int PRIMARY KEY,
        姓名 VARCHAR(50) NOT NULL,
        年龄 int,
        性别 char(10),
        考试时间 date,
        SQL得分 int,
        Python得分 int,
        QTP得分 int,
        测试基础得分 int
    );
    
  3. 根据语法“INSERT INTO 表名称 VALUES (值1, 值n)”插入样本中第一条数据

    insert into 软件测试考试分数表 values(0,'张三',21,'男','2017-12-24',59,59,59,59);
    
  4. 根据语法“INSERT INTO 表名称 (列1, 列n) VALUES (值1, 值n)”插入样本中第二条数据

    insert into 软件测试考试分数表 (Id,姓名,年龄,SQL得分,QTP得分) values(1,'李四',28,78,70);
    
  5. 根据样本将所有信息补充完整,多个样本一起插入

    insert into 软件测试考试分数表 values
    (2,'王五',65,'女','2017-12-23',66,0,95,100),
    (3,'赵六',20,'男','2017-12-24',91,77,NULL,80),
    (4,'hardy',18,NULL,'2017-12-23'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
sql语句来练习题。1. 写出创建图书表的SQL语句。 Create table book( Book_id char (10) primary key, (主码primary key) Name varchar(30) not null, (非空not null) Author varchar(20) Publish varchar(30) Price decimal(6,2) (,前表示有几位有效数字 ,后表示小数部分有几位) ) 2. 将编号为“NEU1105101”的图书的定价改为50元。 Update book (修改数据update语句) Set price=50 Where book_id=‘NEU1105101’ 3. 查询所有男性读者的姓名和出生日期。 Select name.birthdate From reader Where sex=‘男’ 4. 查询图书表中出现过哪些出版社,每个出版社名称只显示一次,并且按照出版社名称升序排列显示。 Select publish From book Order by publish ASC (按照出版社升序排列显示) 5. 查询借阅过定价介于20元到40元(包括两个边界值)图书的读者的姓名。 Select Name (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Where price >=20 and price <=40 6. 查询每个读者借阅过图书的数量,只显示借阅过图书的读者的读者编号以及借书数量。 Select count(book_id),reader_id (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Group by reder_id 7. 如果有一个名为user001的用户,请写出给他分配对图书表进行数据修改的权限的SQL语句。 Grant update on book to user001 (授权grant语句) 8. 创建一个名为view001的视图,其中包含每个出版社的名称、该出版社出版图书的数量、该出版社出版图书的最高定价、以及该出版社出版图书的最低定价。 Create view view001 (创建视图格式,聚集函数) AS Select publish,count(book_id),MAX(price),MIN(price) From student 9. 显示借阅过书名包含“数据库”字样的女性读者的编号和姓名。 Select Name,reader_id (建立多表连接查询) From borrow join book on borrow.book_id=book.book_id Join reader on borrow.reader_id=reader.readerid Where name like ‘%数据库%’ 10. 显示出版图书数量超过100本的出版社的名称及其出版图书的数量。 Select count(book_id),publish (查询图书数量,出版社名称) From book Group by publish (根据出版社的名称来分组) Having count(book_id)>100 (条件约束) 这里用having 不用where 原因是它不能和聚集函数一起使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值