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的更多相关文章
随机推荐
- [LeetCode] Rotated Digits 旋转数字
X is a good number if after rotating each digit individually by 180 degrees, we get a valid number t ...
- pycharm的一些快捷键
[转]pycharm的一些快捷键 忙了好一阵终于忙完了,最近在重构代码,有许多地方要注释什么的,在多行注释时总是很麻烦,就想着pycharm有没有快捷键,就像visual studio一样.于是上Go ...
- idea创建的java web项目打包发布到tomcat
File-> Project Structure... 点击Artifacts->+号 点击Web Application:Archive->选择与你的项目对应的那一项Artifac ...
- xampp+discuz 安装踩坑后总结
之前安装xampp先是出现mysql无法启动,接着安装discuz到最后一部时出现乱码,以及报错(0).后来卸载了xampp,重新安装xampp和discuz后就可以了,应该是版本太高的问题, xam ...
- BringWindowToTop完美激活窗口与置顶
void ActiveWin(IntPtr h) { IntPtr hForeWnd = GetForegroundWindow();//获取当前窗口句柄 int tIdCur = GetWindow ...
- Component template should contain exactly one root element. If you are using v-if on multiple elements, use v-else-if to chain them instead.
运行代码时,一直报错: 经过查询后才知道,vue模板只能有一个跟对象 我是这样写的 最后修改为 就可以正常运行了
- 小甲鱼零基础python课后题 P22 021函数:递归是神马
0.递归在编程上的形式是如何表现的呢? 答:在编程上,递归表现为函数调用本身这么一个行为. 1.递归必须满足哪两个基本条件? 答:1函数调用自己. 2有正确的返回条件 2.思考一下,按照递归的特性,在 ...
- Spring中加载xml配置文件的常用的几种方式
https://blog.csdn.net/qq877507054/article/details/62432062
- Java基础语法入门01
Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...
- MongoDB安全使用指引
MongoDB社区版有三大主要安全措施,分别是安全认证.角色授权和TLS/SSL传输加密.当然除此之外,定期做数据库备份,也是很好的安全防范手段.另外,本文还将对一些提升MongoDB安全性的细节做阐 ...