文章目录

  • 一、前言
  • 二、题目:根据信息创建对应的表单
    • 已知:商品信息表
    • 表名为:Goods,包含ID(自增主键)、NAME(名称、惟一性约束)、Price(价格)、trademark(品牌)和Type(类型,默认值为‘手机’)字段。
  • 三、遇到的BUG:
    • 1.自增语句无法使用
      • 为什么identity(1,1)不能用在这里?
  • 四、答案仅供参考
    • 1.创建表格
    • 2.剩余的题目

一、前言

这道题目还是考察了一下对数据库的基本操作是否熟练


二、题目:根据信息创建对应的表单

已知:商品信息表

表名为:Goods,包含ID(自增主键)、NAME(名称、惟一性约束)、Price(价格)、trademark(品牌)和Type(类型,默认值为‘手机’)字段。

(1).写出建表语句
(2). 查询价格在2000以下的商品名称和剩余数量

(3). 统计各个类别下的商品数量

(4). 按价格排序输出全部商品

(5). 统计各个类别下的最低商品价格

(6). 查询Samsung品牌下的所有商品

(7). 查询价格最高的前3个商品信息

(8). 查询Apple品牌下的商品类别总数

(9). 写出SQL语句,向表中插入一条记录

(10). 写出SQL语句,修改编号为510093的商品数量为5

(11).写出sql语句,删除数量为0的商品

三、遇到的BUG:

1.自增语句无法使用

我们看到题目要求写出自增语句,对ID进行自增操作,所以我们上网搜寻了一下,找到identity(1,1)是可以作为自增语句来使用的。

Create table Goods (ID int primary key identity(1,1), NAME char(30),Price int,trademark char(30),Type char(30) default '手机' );ID primary key identity(1,1);

我们将上述程序在数据库里操作之后,出现以下情况:

为什么identity(1,1)不能用在这里?

identity不能用于MySQL的原因:

  • 原因是MySQL没有identity函数,在MySQL中设置自动编号是需要用auto_increment的。
create table student(id int primary key auto_increment,name varchar(20)
)#设置自增的初值
AUTO_INCREMENT=<你期望的起始id值>
ALTER TABLE <表名> AUTO_INCREMENT=<你期望的起始id值>
#eg:
alter table student auto_increment = 100;

四、答案仅供参考

1.创建表格

//建表
create table Goods (
ID int auto_increment primary key not null,
NAME char(30),
Price int ,
CNT int ,
trademark char(30),
Type char(30) default '手机' );//设置自增初值
alter table goods auto_increment = 51091;insert into goods (NAME,Price,CNT,trademark,Type) value('MacBook Air MD224',8799,30,'Apple','笔记本');
insert into goods (NAME,Price,CNT,trademark,Type) value('Galaxy Note II N7100',5199,100,'Samsung','手机');
insert into goods (NAME,Price,CNT,trademark,Type) value('MV800',1499,200,'Samsung','相机');
insert into goods (NAME,Price,CNT,trademark,Type) value('K860 四核 3G',2188,300,'Lenovo','手机');
insert into goods (NAME,Price,CNT,trademark,Type) value('S7562 3G',1798,200,'Samsung','手机');
insert into goods (NAME,Price,CNT,trademark,Type) value('Y470P-IFI',4299,200,'Lenovo','笔记本');
insert into goods (NAME,Price,CNT,trademark,Type) value('NP-E3415-J01CN',3300,150,'Samsung','笔记本');
insert into goods (NAME,Price,CNT,trademark,Type) value('iPhone 4S 64G',4799,220,'Apple','手机');

此时表格已经创建完毕:

2.剩余的题目

#第二题(2). 查询价格在2000以下的商品名称和剩余数量
select NAME,CNT,Price from goods where price < 2000;#第三题(3). 统计各个类别下的商品数量
select type,sum(cnt) SumType from goods group by type;#(4). 按价格排序输出全部商品
select ID, name,price, trademark from goods order by price asc;#(5). 统计各个类别下的最低商品价格
select type, min(price) minPriceofType from goods group by type;#(6). 查询Samsung品牌下的所有商品
select ID,name from goods where trademark = 'Samsung';#(7). 查询价格最高的前3个商品信息
select id, name, price, cnt, type from goods
order by price desc limit 0,3;#(8). 查询Apple品牌下的商品类别总数
select type, count(ID) from goods where trademark = 'Apple' group by type;#(9). 写出SQL语句,向表中插入一条记录
insert into goods value(5555,'Legin_Y7000',6999,1,'lenove','笔记本');#(10). 写出SQL语句,修改编号为51093的商品数量为5
update goods set cnt = 5 where id = 51093;#(11).写出sql语句,删除数量为0的商品
delete from goods where cnt = 0;

执行完所有程序之后:

数据库基础.数据库查询及约束【练习】相关推荐

  1. 数据库基础及查询语句

    一 数据库 常用语句 -查看所有库 SHOW DATABASES; -使用数据库 USE 数据库名 -查看当前所在数据库 SELECT DATABASE(); -查看当前时间.用户名.数据库版本 SE ...

  2. MySQL数据库基础(外键约束、添加索引)

    文章目录 一.外键约束 1.外键概念 2.关联约束 3.添加与删除外键 4.集联删除 二.MySQL索引 1.创建唯一索引(三种方法) 2.索引查询 3.全文索引 4.联合索引 5.删除索引 一.外键 ...

  3. mysql数据库高级查询笔记_MySQL数据库基础——高级查询

    MySQL数据库入门--day08 高级查询 一.聚合函数: 在实际开发过程中经常需要对数据进行统计,为此MySQL中提供了一些函数来实现某些功能如下表所示: 聚合函数 1.COUNT()函数: CO ...

  4. 【2017-03-09】SQL Server 数据库基础、四种约束

    一.数据库和内存的区别 数据库: 一些存储在硬盘上的数据文件 内存: 计算机临时存储的一些数据 二.常用数据库 .Net - SQL Server PHP - MySql Java - Oreacl ...

  5. 数据库基础之查询语句

    mysql三范式: 第一范式(确保每列保持原子性)[属性不可分] 第二范式(确保表中的每列都和主键相关)[符合第一范式,同时非主属性完全依赖于主键] 第三范式(确保每列都和主键列直接相关,而不是间接相 ...

  6. MySQL数据库基础—SQL查询

    一.单表查询 1.查询所有字段 在SELECT语句中使用星号""通配符查询所有字段 在SELECT语句中指定所有字段 select from TStudent; 2.查询指定字段 ...

  7. MySQL数据库基础——数据库基础

    一.数据库概述 1.数据库管理技术的发展 (1)人工管理阶段 ①数据不用保存: ②使用应用程序管理数据: ③数据不共享: ④数据不具有独立性: (2)文件系统阶段 ①数据可以长期保存: ②由文件系统管 ...

  8. 数据库基础 数据库设计三大范式

    转载自: http://www.cnblogs.com/knowledgesea/p/3667395.html 数据库设计范式 什么是范式:简言之就是,数据库设计对数据的存储性能,还有开发人员对数据的 ...

  9. 数据库基础--数据库基础管理(创建库/表 以及插入修改删除表数据)

    1.啥子是数据库–存储数据的仓库 2.什么是数据–音乐,电影,文本,图片等 常见的数据库软件 Oracle 不开源 跨平台 厂商:甲骨文 MySQL 开源 跨平台 厂商:甲骨文 SQL Server ...

最新文章

  1. php汽车找车位,车停在哪最省心?小编奉上找车位小指南
  2. python就业方向哪个好-学习python就业方向都有哪些?
  3. 012_JDBC模板
  4. Django—模板渲染
  5. 制约RFID在包装领域的规模应用的障碍盘点
  6. 华为融合电信云解决方案包括_运营商这“一朵云”怎么建?使能者华为的解决之道...
  7. 模板匹配中差值的平方和(SSD)与互相关准则的关系
  8. R实例:根据经纬度坐标批量返回行政区域信息
  9. od send断点 下_Win7 od下send断点
  10. linux中demo当前目录,Linux pwd命令:显示当前路径
  11. 微信公众平台开发(112) 微信卡券
  12. View Horizon Mirage安装手册(三)——Mirage Management安装
  13. python暴力破解
  14. 【长期更新】关于各网盘、下载客户端、BT技术
  15. 大学生JAVA程序员周记,java程序员实习周记.docx
  16. 0到1认识计算机:通俗讲解计算机工作原理
  17. 利用逆矩阵解线性方程组_(非)线性方程组求解库大全
  18. UVALive 6198 A Terribly Grimm Problem 二分匹配 求字典序最小解
  19. 小米34寸带鱼屏显示器的耗电计算
  20. songtest 歌曲下载 器

热门文章

  1. view.performclick()不执行
  2. unity 接入leapmotion教程 一 安装
  3. win10两台电脑上的两台虚拟机互联
  4. Unity Android 之 获取系统语言(手机设备设置的系统语言)的二种方式(中文区分简体、繁体、日文)
  5. Android自动化测试 - MonkeyRunner(二) 锤子便签测试脚本
  6. 你居然到现在都还不知道,游戏建模行业发展的这么好?
  7. C语言编写车票管理系统
  8. 8086微处理器-1
  9. 8个实现在线浏览PDF文件的实用jQuery插件
  10. Shader-水面波纹效果