实例

以下是如何解决MySQL的一些常见问题的示例。

首先创建一个表,并且导入数据

CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL,
dealer CHAR(20) DEFAULT '' NOT NULL,
price DOUBLE(16,2) DEFAULT '0.00' NOT NULL,
PRIMARY KEY(article, dealer));
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);

检索表中的全部数据

select * from shop;
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| article | dealer | price |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| 0001 | A | 3.45 |
| 0001 | B | 3.99 |
| 0002 | A | 10.99 |
| 0003 | B | 1.45 |
| 0003 | C | 1.69 |
| 0003 | D | 1.25 |
| 0004 | D | 19.95 |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+

求某一列的最大值或者 最小值

SELECT MAX(article) AS article FROM shop;
+‐‐‐‐‐‐‐‐‐+
| article |
+‐‐‐‐‐‐‐‐‐+
| 4 |
+‐‐‐‐‐‐‐‐‐+
//求某一列的最小值
select min(price) as article from shop;
+‐‐‐‐‐‐‐‐‐+
| article |
+‐‐‐‐‐‐‐‐‐+
| 1.25 |
+‐‐‐‐‐‐‐‐‐+ 

过滤出某个字段值最大的整条记录数据-涉及到子查询

SELECT article, dealer, price
FROM shop
WHERE price=(SELECT MAX(price) FROM shop);
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| article | dealer | price |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| 0004 | D | 19.95 |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+

也可以通过关联查询来进行检索

SELECT s1.article, s1.dealer, s1.price
FROM shop s1
LEFT JOIN shop s2 ON s1.price < s2.price
WHERE s2.article IS NULL;
SELECT article, dealer, price
FROM shop
ORDER BY price DESC
LIMIT 1;

求出每一列的最大值,并且根据某一个字段进行分组--分组topn求法

SELECT article, MAX(price) AS price
FROM shop
GROUP BY article;
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| article | price |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| 0001 | 3.99 |
| 0002 | 10.99 |
| 0003 | 1.69 |
| 0004 | 19.95 |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+

另一种写法

SELECT article, dealer, price
FROM shop s1
WHERE price=(SELECT MAX(s2.price)
FROM shop s2
WHERE s1.article = s2.article);
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| article | dealer | price |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+
| 0001 | B | 3.99 |
| 0002 | A | 10.99 |
| 0003 | C | 1.69 |
| 0004 | D | 19.95 |
+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐+ 

数据库-解决MySQL的一些常见问题相关推荐

  1. mysql数据库最后一步卡住了_[数据库]解决MySQL安装到最后一步未响应的三种方法...

    [数据库]解决MySQL安装到最后一步未响应的三种方法 0 2018-07-13 01:01:27 这种情况一般是你以前安装过MySQL数据库服务项被占用了. 解决方法: 方法一:安装MySQL的时候 ...

  2. [flask实践] 解决mysql数据库不支持中文的问题

    [flask实践] 解决mysql数据库不支持中文的问题 参考文章: (1)[flask实践] 解决mysql数据库不支持中文的问题 (2)https://www.cnblogs.com/xiaozh ...

  3. mysql 自动停止_MySQL数据库之mysql自动停止的完美解决方法

    本文主要向大家介绍了MySQL数据库之mysql自动停止的完美解决方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 这两天新买的服务器mysql总是自动停止,查了日志 9:1 ...

  4. mysql数据库断开连接_解决mysql服务器在无操作超时主动断开连接的情况

    我们在使用mysql服务的时候,正常情况下,mysql的设置的timeout是8个小时(28800秒),也就是说,如果一个连接8个小时都没有操作,那么mysql会主动的断开连接,当这个连接再次尝试查询 ...

  5. mysql数据库localhost已断开_完美解决MySQL通过localhost无法连接数据库的问题

    问题:一台服务器的PHP程序通过localhost地址无法连接数据库,但是如果设置为127.0.0.1则可以正常连接,连接其他数据库服务器也正常.MySQL的权限设置正确,且通过mysql命令行客户端 ...

  6. mysql新加不了数据库_MySQL数据库之mysql增加新用户无法登陆解决方法

    本文主要向大家介绍了MySQL数据库之mysql增加新用户无法登陆解决方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 今天安装openstack folsom版本,安装完m ...

  7. isfull mysql_MySQL数据库之MySQL 出现 The table is full 的解决方法

    本文主要向大家介绍了MySQL数据库之MySQL 出现 The table is full 的解决方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 当我们要写入新数据而发生& ...

  8. mysql data too large_MySQL数据库之mysql 主从同步故障解决   Error 'Row size too large ( 8126)....

    本文主要向大家介绍了MySQL数据库之mysql 主从同步故障解决   Error 'Row size too large (> 8126). ,通过具体的内容向大家展现,希望对大家学习MySQ ...

  9. 无法打开数据库‘mysql_MySQL数据库之MYSQL无法启动解决方法

    本文主要向大家介绍了MySQL数据库之MYSQL无法启动解决方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 在my.ini(linux下/etc/my.cnf)加上skip ...

最新文章

  1. NeurIPS 2020 大变动,领域主席可拒稿20%,作者即评审,布局远程会议!
  2. 64位 windows python3.4及numpy matplot等的安装
  3. 知识图谱有哪些方向是可以深入研究的?
  4. Response_案例2_输出字符数据
  5. 三剑客之sed常用操作
  6. 如何在servlet刚启动时候获取服务器根目录?
  7. python编译make_Python在Linux下编译安装
  8. Java笔记-Java端口扫描功能(含TCP包分析以及原理)
  9. 【clickhouse】Application: DB::Exception: Duplicate interserver IO endpoint: DataPartsExchange
  10. 扫雷php,PHP也可以写扫雷游戏 不信看这里 PHP挖地雷
  11. iis7 64位 操作excel的一系列问题(未完待续)
  12. Python实现代码行数统计工具
  13. Android APK系列3-------使用platform密钥来给apk文件签名
  14. 【知了堂学习笔记】SQL查询总结(1)
  15. Top9竞赛总结-NLP语义相似度 第三届拍拍贷“魔镜杯”大赛
  16. 数学建模国赛latex写作模板
  17. torch 中的 stft、torchaudio 中的 Spectrogram、Melscale、MelSpectrogram 的使用
  18. docker创建mysql容器
  19. 套用bi模板,轻松搞定各类数据分析报表
  20. SONY-显示器-对比

热门文章

  1. 分布式锁-常用技术方案
  2. 常用Redis命令总结
  3. Spring学习(22)--- AOP之Advice应用(下)
  4. C# 操作其他进程ListView
  5. 【Lucene】Lucene的工作原理
  6. 【洛谷 P2051】 [AHOI2009]中国象棋(DP)
  7. 前瞻:Java能否畅行未来?
  8. pomelo中的next
  9. (转)Linux设备驱动之HID驱动 源码分析
  10. 在项目中寻找代码的坏味道(命名)