• 基本操作
    创建数据库
create database exam;
use exam;

创建表

#“BRANDS”
create table BRANDS
(
id int(11) primary key not null auto_increment,
bna varchar(10),
bnu int(4),
price decimal(10,1) not null;#CATES
create table CATES
(
cna varchar(10),
cnu int(4));#CATE-BRANDS
create table CATE_BRANDS
(
bnu int(4),
cnu int(4));

·下附插入的数据

三个表关系
品牌(品牌名称,品牌编号,价格,类型名称)
类型(类型名称,类型编号)
类型-品牌(品牌编号,类型编号)

  • 设计题
    (a)找到价格在3000以上的超级本有哪些品牌。
select DISTINCT brand_name from goods where price > 3000 AND cate_name = "超级本";

(b)找到类型编号为2的品牌名。

#where
select distinct BRANDS.bna from BRANDS,CATES where BRANDS.cate_name = CATES.cna AND CATES.cnu = 2;
#内连接 inner join ... on
select distinct BRANDS.bna from BRANDS inner join CATES on BRANDS.cate_name = CATES.cna where CATES.cnu = 2;
#左连接 left join ... on
select distinct BRANDS.bna from BRANDS left join CATES on BRANDS.cate_name = CATES.cna where CATES.cnu = 2;

(c)在goods表中找到name含有“键盘”的数据。

select * from goods where name like '%键盘%';
#%表示任何字符出现任意次数
#‘%键盘’ 表示以“键盘”结尾;‘键盘%’  表示以“键盘”开头

~补充知识

  • update
#同一个表
update table1 set field1 = field2;#不同表
update table1,table2 set table1.field1=table2.field2 where table1.id=table2.id
#对表格中的内容进行操作 : insert、update、delete
  • alter table
#增加一列-add
alter table BRANDS add column name varchar(10);
#删除一列-drop
alter table BRANDS drop column name varchar(10);
#修改数据类型、字段位置-modify
alter table BRANDS modify column id int(11) auto_increment first;
#修改名字-change  (change修改的范围和力度要比modify 大)
alter table BRANDS modify column id int(11) auto_increment first;
  • 删除表
#删除原表中的数据记录
DELETE FROM table;#删除数据表
DROP TABLE table;

附表
“BRANDS”表

 insert into BRANDSVALUES
(1,"华硕",1,3399),
(2,"华硕",1,2799),
(3,"联想",2,4880),
(4,"联想",2,4299),
(5,"索尼",3,7999),
(6,"苹果",4,1999),
(7,"苹果",4,3388),
(8,"苹果",4,2788),
(9,"联想",2,29),
(10,"戴尔",5,3499),
(11,"爱戴尔",6,2899),
(12,"雷蛇",7,29),
(13,"索尼",3,299),
(14,"唯爱",8,1899);

“CATES”表

#插入数据
insert into CATES
VALUES
("笔记本",1),
("超级本",2),
("平板电脑",3),
("台式机",4),
("电脑配件",5)
;

“CATE-BRANDS”表

insert into CATE_BRANDS
VALUES
(1,1),
(1,1),
(2,2),
(2,2),
(3,2),
(4,3),
(4,3),
(4,3),
(2,4),
(5,4),
(6,5),
(7,5),
(3,5),
(8,5)
;

京东数据—“goods”表

create table goods( id int unsigned primary key auto_increment not null,name varchar(150) not null, cate_name varchar(40) not null,brand_name varchar(40) not null, price decimal(10.3) not null default 0,is_show bit not null default 1, is_saleoff bit not null default 0 );
insert into goods values(0,'r510vc 15.6英寸笔记本','笔记本','华硕','3399',default,default);
insert into goods values(0,'x550cc 15.6英寸笔记本','笔记本','华硕','2799',default,default);
insert into goods values(0,'x240 超级本','超级本','联想','4880',default,default);
insert into goods values(0,'u330p 13.3英寸超级本','超级本','联想','4299',default,default);
insert into goods values(0,'svp13226scb 触控超级本','超级本','索尼','7999',default,default);
insert into goods values(0,'ipad mini 7.9英寸平板电脑','平板电脑','苹果','1999',default,default);
insert into goods values(0,'iPad air 9.7英寸平板电脑','平板电脑','苹果','3388',default,default);
insert into goods values(0,'iPad mini 配置 retine 显示屏','平板电脑','苹果','2788',default,default);
insert into goods values(0,'ideacentre c3340 20英寸一体电脑','台式机','联想','3499',default,default);
insert into goods values(0,'vostro 3800-r1206 台式电脑','台式机','戴尔','2899',default,default);
insert into goods values(0,'15.6 寸电脑屏保护膜','电脑配件','爱戴尔','29',default,default);
insert into goods values(0,'优雅 复古 无线鼠标键盘','电脑配件','雷蛇','299',default,default);
insert into goods values(0,'15寸 4K 液晶显示屏','电脑配件','索尼','1899',default,default);
insert into goods values(0,'限量款 LOL 鼠标垫','电脑配件','唯爱','29',default,default);

mysql小练习--有题有数据相关推荐

  1. 【mysql技巧】按某一字段分组取最大(小)值所在行的数据

    mysql技巧--按某一字段分组取最大(小)值所在行的数据,这是mysql数据库程序员经常用到的在处理一些报表数据时候可以活用!那么猎微网将总结几种mysql查询最大值 mysql查询最小值的方法! ...

  2. mysql按某一字段分组取最大(小)值所在行的数据

    mysql按某一字段分组取最大(小)值所在行的数据   mysql技巧--按某一字段分组取最大(小)值所在行的数据,这是mysql数据库程序员经常用到的在处理一些报表数据时候可以活用!那么猎微网将总结 ...

  3. 从mysql读取数据保存成excel_小程序读取excel表格数据,并存储到云数据库

    最近一直比较忙,答应大家的小程序解析excel一直没有写出来,今天终于忙里偷闲,有机会把这篇文章写出来给大家了. 老规矩先看效果图 效果其实很简单,就是把excel里的数据解析出来,然后存到云数据库里 ...

  4. excel与云mysql连接数据库_小程序读取excel表格数据,并存储到云数据库

    最近一直比较忙,答应大家的小程序解析excel一直没有写出来,今天终于忙里偷闲,有机会把这篇文章写出来给大家了. 老规矩先看效果图 效果其实很简单,就是把excel里的数据解析出来,然后存到云数据库里 ...

  5. mysql 常用小工具包_mssql+mysql小工具(无需环境依赖)-mysql数据库批量实体CS类导出工具下载v3.0免费版-西西软件下载...

    mysql数据库批量实体CS类导出工具是一个功能简单的数据库小工具,可以选中数据表执行查询,以及自定义sql语句,查询或者执行增删改,可以查看目标服务器对应数据库以及表和字段信息,不需要单独安装mys ...

  6. MySQL学习笔记——第3章 数据表的管理和表中数据操纵

    第3章 数据表的管理和表中数据操纵 3.1 MySQL数据类型 数字类型:数字类型包括整数类型和数值类型 整数类型:TINYINT.SMALLINT.MEDIUMINT.INT和BIGINT 数值类型 ...

  7. MYSQL数据库(九)- 修改数据表名称、列名称

    目录 一.修改列定义(modify col_name) 二.修改列类型(modify col_name) 三.修改列名称(change col_name) 三.修改表名称(rename table a ...

  8. mysql做十亿条数据查询_数据库优化:mysql数据库单机数十亿数据查询设计

    很久没写文章,是不是想着写点什么东西,分享下我的数据库设计思路,主要是针对单机数十亿及以上数据查询优化技巧. 如果只是简单的查询,没有频繁的写入操作,对查询速度不要求在毫秒级别,就不需要什么大型的数据 ...

  9. 数据库系统原理与应用教程(077)—— MySQL 练习题:操作题 168-172(二十一):综合练习

    数据库系统原理与应用教程(077)-- MySQL 练习题:操作题 168-172(二十一):综合练习 168.分组统计(1) 该题目使用的表和数据如下: /* DROP TABLE IF EXIST ...

最新文章

  1. chromiumwebbrowser 使用_CefSharp ChromiumWebBrowser初始化完成后加载网址
  2. hash_map allocator
  3. 操作系统原理之操作系统简介(第一章)
  4. 启航考研计算机课程,计算机考研专业课如何备考
  5. Bing每日壁纸API分享
  6. 监督学习 | 线性回归 之正则线性模型原理及Sklearn实现
  7. [jQuery基础] jQuery案例 -- qq音乐以及初步解决Ajax 跨域问题
  8. 学习索引结构的一些案例——Jeff Dean在SystemML会议上发布的论文(上)
  9. VC++使用CImage在内存中Bmp转换Jpeg图片
  10. JS调用OCX控件过程
  11. NGINX转发udp、tcp
  12. EXCEL之对单元格批量填充内容
  13. 离线强化学习(Offline RL)系列2: (环境篇)D4RL数据集简介、安装及错误解决
  14. S老师 Top-Down RPG Starter Kit 学习
  15. 让传感器数据在三维地图上显示,更直观,更震撼!
  16. 「电商干货」分销爆单的6个步骤
  17. 为微信小程序扩展自定义babel编译功能
  18. MarkDown基本语法--程序员必修
  19. C语言程序设计卢萍,卢萍
  20. 丰胸的贴吧怎样引流加微信?百度贴吧怎么才能把人引流到微信?

热门文章

  1. 第一次 PCB 打样
  2. 中国学校需要考虑的 7个主要险种
  3. 大数据开发和java开发有什么不同?
  4. 程序员应该掌握的选择思维模式?
  5. 用Python分割九宫格图片发朋友圈
  6. 【java PTA实验】认真做实验的弱菜(6 / 7)
  7. 网页技巧-网页的版式设计---版式的基本类型
  8. 从概念到现状,一文读懂边缘计算
  9. 程序创业会有哪些坑?
  10. 如何用 CSS 制作动画圆环图形图标