Mysql中对table的操作问题
今天利用一个mysql问题来对前期学习Mysql操作的一个小小的检验!!现在总结一下Mysql中对表格的建立、插入特定的数据、以及查询满足某一段条件的数据等等进行操作。
首先需要建立如下三个表(table);
客户表 customer:
cno 客户号
cname 客户名称
商品表 goods:
gno 商品号
gname 商品名称
订单表 orders:
data 日期(8位整数表示,如20160823)
ono 订单号
cno 客户号
gno 商品号
amount 数量
Mysql 对表格的建立代码:
1 create database if not exists test; //首先创建一个数据库 2 3 use test; //进入数据库 4 5 create table customer( id int auto_increment primary key); //创建table id列自动 +1 6 7 alter table customer add column (cno varchar(20), cname varchar(20)); //添加cno列和cname列 8 9 insert into customer 10 (cno, cname) 11 values 12 ("001", "001"), 13 ("002", "002"); //这样创建好了customer表
customer表:
如此操作得到goods表以及orders表:
1.查询2015年没有被购买过的商品号和商品名称:
1 select goods.gno, goods.gname from goods 2 where goods.gno not in (select orders.gno from orders where orders.data between 20150101 and 20151231);
示列结果:
2.查询2016年的订单,显示订单的日期、订单号、客户名:
1 select orders.data, orders.ono, orders.cno from orders 2 where orders.data between 20160101 and 20161231;
示列结果:
3.删除2015年以前的订单:
1 delete from orders 2 where orders.data < 20150101; 3 4 5 select * from orders; //查询orders数据
示列结果:
4.查询订单数在4个以上商品号和总数量并按总数量降序排序:
1 select gno, amount from orders 2 where amount > 4 order by amount desc;
示列结果:
基本操作就是这样的,这几天一直在研究Mysql语法,脑袋感觉处于一种浆糊的感觉,还是需要一点点时间将这些东西慢慢吸收!
其中关于给订单创建一个合适的索引没有想到很明确的方法,我的思维是删除id主键,添加日期或者其他列作为新的索引;这样操作是因为我将id作为自动增加且主键吧
记录一下一些用到的语法:
1 alter table tablename drop id; //删除id列 2 3 alter table tablename add id int auto_increment primary key first; // 将id列添加到第一列并且赋予主键索引 4 5 6 delete from tablename where id =1;//删除id=1这一行 7 8 update tablename set column = values where id = 1;//在id=1这行中将 values赋值给column列 9 10 select * from tablename order by cast(column as signed/unsigned integer);//改变列属性将varchar改变成int
1 alter table tables add index(column);//创建索引 2 3 alter table tablename add primary key(column);//创建主键索引
转载于:https://www.cnblogs.com/ZNwithLC/p/7463997.html
Mysql中对table的操作问题相关推荐
- mysql的json函数与实例_Mysql实例详解Mysql中的JSON系列操作函数
<Mysql实例详解Mysql中的JSON系列操作函数>要点: 本文介绍了Mysql实例详解Mysql中的JSON系列操作函数,希望对您有用.如果有疑问,可以联系我们. MYSQL必读前言 ...
- mysql中需要提交的操作_MySQL常用操作及基础知识
原标题:MySQL常用操作及基础知识 1.启动和关闭mysql服务器: service mysql start service mysql stop 2.重启MySQL服务: service mysq ...
- 详解Mysql中的JSON系列操作函数
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 一.方法罗列: 分类 函数 描述 创建json json_array 创建json数组 json_o ...
- mysql操作json优点和缺点_详解Mysql中的JSON系列操作函数
前言 JSON是一种轻量级的数据交换格式,采用了独立于语言的文本格式,类似XML,但是比XML简单,易读并且易编写.对机器来说易于解析和生成,并且会减少网络带宽的传输. JSON的格式非常简单:名称/ ...
- 【MySQL】MySQL中如何实现分页操作
MySQL中的分页操作 一. 背景 什么是分页,就是查询时候数据量太大,一次性返回所有查询结果既耗费网络资源.又降低了查询效率,用户也不可能一下子看完成千上万条数据.所以分页的技术就应运而生.分页可以 ...
- 7、mysql中的表结构操作
之前已经介绍了字段以及修饰字段的一些属性,根据特定的对象可以将字段进行组合,这就有了表的概念,接下来介绍一下如何操 作数据表结构.对数据表结构的操作有添加表.修改表.删除表.查看表结构. 添加表 格式 ...
- mysql binary like,在MySQL中为BINARY LIKE操作建立索引
我知道varchar_pattern_ops存在于Postgresql中,用于在LIKE查询中进行基于索引的快速搜索,但是MySQL是否有类似的功能? 目前,我有一个Django-MySQL设置,其中 ...
- mysql中OPTIMIZE TABLE的作用
1.先来看看多次删除插入操作后的表索引情况 mysql> SHOW INDEX FROM `tbl_name`;+----------+------------+------------+--- ...
- MYSQL中常用的强制性操作(例如强制索引)
对于经常使用oracle的朋友可能知道,oracle的hint功能种类很多,对于优化sql语句提供了很多方法.同样,在mysql里,也有类似的hint功能. 其他强制操作,优先操作如下: mysql常 ...
最新文章
- 学完HTML5后可以开发哪些互联网产品呢?
- auto.js停止所有线程_多线程快速入门(二)及面试题
- python---之round
- 如何在 Linux 中复制文件到多个目录中
- Programiz 中文系列教程·翻译完成
- 买个社区团购小程序多少钱呢?微信社区团购小程序怎么做
- python识图坐标_python 识别minecraft截图坐标
- 中断 10 分钟,改变孩子沉迷游戏的习惯
- 笔记本未指定打印机服务器,打印机未指定怎么办_win10打印机未指定设备的解决方法...
- CC00052.LBCHAC——|Selinux.V2|——|2台server|
- 每天花半小时给孩子讲故事,把他培养成依赖书的人种
- 高级事件----笔记
- 大一新生必看,自学必看,里昂详解数据结构之二叉树
- 正则表达式中反斜杠的另一用法
- [嵌入式基础]-arm架构和x86架构区别
- SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛-白色相簿
- java soap附件_Axis2用法:soap消息携带附件
- js reduce()
- Pots 用bfs模拟2杯子体积分别为A,B通过一系列操作把其中一杯子变为C升水
- checkbox选中和不选中 jqu_jquery 选中checkbox兼容问题如何解决?
热门文章
- chrome浏览器不能录音:Uncaught TypeError: Cannot read property ‘getUserMedia‘ of undefined解决方法
- 二十七、二叉树--删除结点
- 相机模型--A Theory of Catadioptric Image Formation
- 对抗网络用于人脸转正--Beyond Face Rotation
- 查询服务器上几张显卡命令
- Linux/ubuntu 服务器开启6010端口-X11服务-ssh连接
- 【Netty】入门Netty官方例子解析(二)Time Server
- Elasticsearch之深入了解Doc Values 和 Fielddata
- 抽血检查超敏c高_答疑抽血检查甲状腺需要空腹吗?
- 拼装sql_3分钟短文 | Laravel复杂SQL超多WHERE子句,本地作用域你没用过