mysql_study_5
代码
mysql> CREATE TABLE shop (
-> article INT(4) UNSIGNED ZEROFILL DEFAULT '' NOT NULL,
-> dealer CHAR(20) DEFAULT '' NOT NULL,
-> price DOUBLE(16,2) DEFAULT '0.00' NOT NULL,
-> PRIMARY KEY(article, dealer));
# 插入数据
mysql> INSERT INTO shop VALUES
-> (1,'A',3.45),(1,'B',3.99),(2,'A',10.99),(3,'B',1.45),
-> (3,'C',1.69),(3,'D',1.25),(4,'D',19.95);
使用max()计算最大值
mysql> SELECT MAX(article) as article FROM shop;
查询某列最大值所在的行
# 显示price这一列最大值对应的行
mysql> SELECT article, dealer, price
-> FROM shop
-> WHERE price=(SELECT MAX(price) FROM shop);
mysql> SELECT article, dealer, price
-> FROM shop
-> ORDER BY price DESC
-> LIMIT 1;
按组显示列的最大值
mysql> SELECT article, MAX(price) AS price
-> FROM shop
-> GROUP BY article;
通过使用用户变量找出价格最高或者最低的物品
mysql> select @min_price:=MIN(price),@max_price:=MAX(price) from shop;
+------------------------+------------------------+
| @min_price:=MIN(price) | @max_price:=MAX(price) |
+------------------------+------------------------+
| 1.25 | 19.95 |
+------------------------+------------------------+
mysql> select @min_price:=MIN(price),@max_price:=MAX(price) from shop;
+------------------------+------------------------+
| @min_price:=MIN(price) | @max_price:=MAX(price) |
+------------------------+------------------------+
| 1.25 | 19.95 |
+------------------------+------------------------+
使用两个关键字进行搜索
充分利用 OR 连接两个关键字(AND也是一样的道理)
# 这里面的test_table可以是任何一个表,关键词也是类似
SELECT field1_index, field2_index FROM test_table
WHERE field1_index = '' OR field2_index = ''
还可以使用UNION将表里面的两个关键字一起使用进行搜索
SELECT field1_index, field2_index
FROM test_table WHERE field1_index = ''
UNION
SELECT field1_index, field2_index
FROM test_table WHERE field2_index = '';
UNION 用于合并两个或多个 SELECT 语句的结果集,并消去表中任何重复行。
CREATE TABLE animals (
id MEDIUMINT NOT NULL AUTO_INCREMENT,
name CHAR(30) NOT NULL,
PRIMARY KEY (id)
); INSERT INTO animals (name) VALUES
('dog'),('cat'),('penguin'),
('lax'),('whale'),('ostrich'); SELECT * FROM animals;
自动升序编号

或者可以
AUTO_INCREMENT 默认从 1 开始递增,如果你想自定义开始的数字,可以在创建表的时候指定,如: CREATE TABLE animals (
id MEDIUMINT NOT NULL AUTO_INCREMENT,
name CHAR(30) NOT NULL,
PRIMARY KEY (id)
)AUTO_INCREMENT = 1000
或者表已经创建好了 直接指定修改下 ALTER TABLE tbl_name AUTO_INCREMENT = 100001;
创建表得时候也可以指定得
CREATE TABLE animals (
id MEDIUMINT NOT NULL AUTO_INCREMENT,
name CHAR(30) NOT NULL,
PRIMARY KEY (id)
)AUTO_INCREMENT=100001;
尝试建立一个图书馆数据库,任由发挥,但必须包含基本信息:图书信息,借书人的信息,出版社信息。并运用这一节课学到的索引知识对数据库进行索引。
create database Library;
use Library; create table publish(
pub_id int primary key,
pub_name varchar(50)
); create table books(
book_id int primary key,
book_name varchar(50) not null,
book_pub int not null,
foreign key(book_pub) references publish(pub_id)
); create table reader(
reader_id int primary key,
reader_name varchar(50)
);
mysql_study_5的更多相关文章
随机推荐
- __http原理__02__HTTP请求方法
一.HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方法. HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法. HTTP1.1新增了五种请求方法:OPTIONS ...
- LeetCode Monotone Stack Summary 单调栈小结
话说博主在写Max Chunks To Make Sorted II这篇帖子的解法四时,写到使用单调栈Monotone Stack的解法时,突然脑中触电一般,想起了之前曾经在此贴LeetCode Al ...
- jetty服务器原理与maven集成
jetty服务器原理+MyEclipse下与Maven集成 Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境.Jetty是使用Java语 ...
- | dp-the Treasure Hunter
题目: A. Mr. Kitayuta, the Treasure Hunter time limit per test 1 second memory limit per test 256 mega ...
- MTQQ 物联网
这个是学校的SRP项目.去年12月做了大概3周. 直接摘个人总结报告如下: 在本次“学生研究计划”项目,研究课题是“基于JAVA的智能家居公众号”.根据课题要求之一:以微信作为媒介,实现智能设备的远程 ...
- Linux系统的命令应该如何记?
Linux入门篇: 很多刚入门的同学,就像无头的苍蝇一样,到处找视频.书籍.网站帖子之类的学习方式,视频虽然讲得详细,但是时间的投入也是巨大的,播放时间,练习时间,加起来很吓人,其实啊很少有人能坚持把 ...
- 弄懂JDK、JRE和JVM到底是什么
首先是JDK JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK).在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bi ...
- webrtc如何进行错误恢复
视频的压缩方法:(三种帧) 为了视频尽可能的保持高效,视频数据通过不同的编码进行压缩.以帧为单位进行压缩,按照压缩中的不同作用可分类为:内帧(Intra-frames,I帧),预测帧(Predicti ...
- netstat lsof ps 常用场景
1.netstat 命令可以帮助检查本机的网络状况实战应用1:公司内部的一个老服务运行在192.168.1.1:50060上,服务将于一周之后停用,再在要查一下本机上有没有进行在调用该服务.[root ...
- mysql(七)
多表查询: 显示内连接: select 字段列表 from 表名1 inner join 表名1 on 条件 * inner 可忽略 select * from student inner j ...