MySQL中文参考手册--8.MySQL教程--8.3 常用查询的例子
本文出自: http://linuxdb.yeah.net 译者:晏子 (2001-07-22 18:22:34)

8.3 常用查询的例子

下面是一些学习如何用MySQL解决一些常见问题的例子。

一些例子使用数据库表“shop”,包含某个商人的每篇文章(物品号)的价格。假定每个商人的每篇文章有一个单独的固定价格,那么(物品,商人)是记录的主键。

你能这样创建例子数据库表:

好了,例子数据是这样的:

8.3.1 列的最大值

“最大的物品号是什么?”

8.3.2 拥有某个列的最大值的行

“找出最贵的文章的编号、商人和价格”

在ANSI-SQL中这很容易用一个子查询做到:

MySQL中(还没有子查询)就用2步做到:

  1. 用一个SELECT语句从表中得到最大值。
  2. 使用该值编出实际的查询:

另一个解决方案是按价格降序排序所有行并用MySQL特定LIMIT子句只得到的第一行:

注意:如果有多个最贵的文章( 例如每个19.95),LIMIT解决方案仅仅显示他们之一!

8.3.3 列的最大值:按组:只有值

“每篇文章的最高的价格是什么?”

8.3.4 拥有某个字段的组间最大值的行

“对每篇文章,找出有最贵的价格的交易者。”

ANSI SQL中,我可以用这样一个子查询做到:

MySQL中,最好是分几步做到:

  1. 得到一个表(文章,maxprice)。见8.3.4 拥有某个域的组间最大值的行。
  2. 对每篇文章,得到对应于存储最大价格的行。

这可以很容易用一个临时表做到:

如果你不使用一个TEMPORARY表,你也必须锁定“tmp”表。

“它能一个单个查询做到吗?”

是的,但是只有使用我称之为“MAX-CONCAT诡计”的一个相当低效的诡计:

最后例子当然能通过在客户程序中分割连结的列使它更有效一点。

8.3.5 使用外键

不需要外键联结2个表。

MySQL唯一不做的事情是CHECK以保证你使用的键确实在你正在引用表中存在,并且它不自动从有一个外键定义的表中删除行。如果你象平常那样使用你的键值,它将工作得很好!

转载于:https://www.cnblogs.com/sunsonbaby/archive/2004/09/02/38718.html

MySQL中文参考手册--8.MySQL教程--8.3 常用查询的例子相关推荐

  1. MySQL中文参考手册--1.MySQL的一般信息

    MySQL中文参考手册--1.MySQL的一般信息 0 译者序 MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用.由于它的强大功能.灵活性.丰富的应 ...

  2. MySQL中文参考手册分享

    MySQL中文3.23.7-alpha版本参考手册 链接:https://pan.baidu.com/s/1cXF_pmTxSjKpzoKzbqssJQ 提取码:cjpl MySQL 5.1至5.1. ...

  3. MySQL中文参考手册-- 常用查询的例子

    下面是一些学习如何用MySQL解决一些常见问题的例子.一些例子使用数据库表"shop",包含某个商人的每篇文章(物品号)的价格.假定每个商人的每篇文章有一个单独的固定价格,那么(物 ...

  4. 阿里云 mysql 修改root密码修改_设置及修改MySQL root用户密码 - MySQL中文参考手册...

    设置及修改MySQL root用户密码MySQL数据库用户安全策略介绍 安装mysql数据库后,默认的管理员root密码是空,这很不安全,因此需要设置一个密码为root设置密码 删除无用的MySQL库 ...

  5. mysql最新版中文参考手册在线浏览

    MySQL是最流行的开放源码SQL数据库管理系统,具有快速.可靠和易于使用的特点.同时MySQL也是一种关联数据库管理系统,具有很高的响应速度和灵活性.又因为mysql拥有良好的连通性.速度和安全性, ...

  6. 【《MySQL 8 参考手册》中文翻译】前言

    本文介绍了[<MySQL 8 参考手册>中文翻译]系列文章的版权声明.文章格式.文本格式约定等. 目录 版权声明 文章格式 文本格式约定 版权声明 本书内容大部分翻译自 <MySQL ...

  7. jQuery EasyUI 1.9.4中文参考手册 离线chm格式

    jquery-easyui1.9.4中文参考手册是一套关于jQuery EasyUI的参考帮助文档,在线帮助文档进行整理,生成chm文件,便于开发时或者离线对easyi控件的属性.文法.事件等内容的查 ...

  8. 下载Hibernate中文参考手册2.1版

    下载Hibernate中文参考手册 下载Hibernate中文参考手册 PDF版本下载 下载Hibernate-2.1.2 下载Hibernate-extension-2.0.2 转载于:https: ...

  9. STM系列单片机中文参考手册下载方法

    在使用STM单片机编程的时候有时候需要查阅芯片手册,英文手册查阅起来比较麻烦,而搜索中文手册时,好多网站下载时需要注册或者需要积分,下载起来比较麻烦.现在就来说一下,如何在官方网站下载各个系列单片机的 ...

  10. STM32中文参考手册下载地址

    STM32中文参考手册下载地址 进入官网后点击"设计资源" 选择你要下载的芯片的手册 然后找到有"完整的存储器和外设信息"字眼的文档进行下载 很多人下载的下面这 ...

最新文章

  1. linux哪个版本支持多线程,关于Linux操作系统的叙述错误的是()A、Linux是多用户、多任务、支持多线程的操作系统B、Linux的源...
  2. 如何画圆柱_什么是最速降线?如何来验证一下呢?这里用SolidWorks来试一试
  3. word2003计算机考试题,[2018职称计算机Word2003考前练习题] 2018年职称计算机考试练习题库...
  4. windows的dos(cmd)下使用git commit出现error: pathspec readme.md did not match any file known to git
  5. uhd630黑苹hdmi_【EFI】联想 ThinkCentre M920t-N000 i5-9500 UHD630 ALC662 10.14.6 HDMI 黑苹果Hackintosh 引导下载...
  6. mysql重复你数据标识_MySQL 处理重复数据
  7. docker(4):coreos+docker+rancher真厉害
  8. 机器学习之微积分零基础学习
  9. Hibernate下载地址
  10. 眼图测试(硬件测试、信号完整性测试)
  11. 运算符优先级及记忆口诀
  12. wxPython 俄罗斯方块游戏
  13. 好文:练习一万小时成天才?(by同人于野)
  14. Linux基本命令-权限、运维相关
  15. java搭建直播平台
  16. COCO 与VOC格式转化 -目标识别
  17. 计算机综合症怎么治,小窍门防治电脑综合征
  18. 唉 我的libgdx
  19. 【JAVA 文件概述】
  20. 2020-2-16 B - Math

热门文章

  1. shell基础之case应用
  2. 【转】Postman 使用方法详解
  3. Fiddler原理~知多少?
  4. 【Shell 脚本】Mysql 定时备份
  5. python取文件后缀
  6. 全世界云计算宕机和中断[2013年-2014年集锦]
  7. ASP.NET MVC 在项目中使用面包屑导航
  8. UITableView的cell重用优化
  9. 写, 读sdcard目录上的文件
  10. oracle用UNION-ALL 替换UNION ( 如果有可能的话)