例如下面的是user表:如果执行 SELECT username,age FROM user WHERE uid=2

mysql的查询原理应该是什么样的呢?

|   uid    | username|   age   |
|---------|-------- |-------- |
|    1    |   张三    |   62    |
|---------|-------- |-------- |
|    2    |   李四    |   34    |
|---------|-------- |-------- |
|    3    |   王五    |   23    |

查询把列当做变量 例子中使用变量uid 操作查询, 结果为真取出表内数据

mysql的查询过程原理:

  • 列是变量,变量可以计算。 WHERE是表达式,值为真假。

同样如果执行 SELECT * FROM user WHERE 1 是什么结果呢?

根据以上原理把所有列作为变量传入结果都为真,因为1 的结果恒为真所以取出所有数据

所以 SELECT * FROM user WHERE 0 的结果为为假无数据取出

变量计算如何操作呢?

  • 执行以下sql
    SELECT username,age+1 FROM user
    结果为:
 |   uid   | username|   age   ||---------|-------- |-------- ||    1    |   张三  |   63    ||---------|-------- |-------- ||    2    |   李四  |   35    ||---------|-------- |-------- ||    3    |   王五  |   24    |

得出结果所有的age列数据都+1

比如:如下goods表,我想知道我们店铺手机销售价比市场价低多少? 下面我用计算方式查询数据。

 |   gid   | g_name  |shop_price|market_price||---------|-------- |----------|------------||    1    | 三星2019 |  11112  |   12111    ||---------|-------- |----------|------------||    2    |  ipone8 | 6668   |   6999     ||---------|-------- |----------|------------||    3    | 华为Note |  6666   |   7100     |

执行sql

   SELECT gid,g_name,market_price,shop_price,market_price-shop_price FROM goods

查询结果如下:

 |   gid   | g_name  |shop_price|market_price|market_price-shop_price||---------|-------- |----------|------------|-----------------------||    1    | 三星2019 |  11112  |   12111    |       999             ||---------|-------- |----------|------------|-----------------------|  |    2    |  ipone8 |   6668   |   6999     |       331             ||---------|-------- |----------|------------|-----------------------||    3    | 华为Note |  6666   |   7100     |       434             |

Mysql查询原理、计算属性理解相关推荐

  1. 在MySQL查询中计算一个人的年龄

    最近在Phpfreaks.com论坛上提出了一个问题,即有人使用MySQL数据库存储用户出生日期的最佳方式.一个人建议使用varchar,因为他们最熟悉字符串函数.我的回答是使用MySQL日期类型. ...

  2. MySQL查询原理简述

    一:MySQL查询 1:单表查询 根据where条件过滤表中的记录,每过滤一次形成一张中间表(中间表对用户是不可见的).然后根据select的选择列返回最终的结果. 2:两张表连接查询 对两表求积(笛 ...

  3. mysql in 原理_深入理解MySql子查询IN的执行和优化

    IN为什么慢? 在应用程序中使用子查询后,SQL语句的查询性能变得非常糟糕.例如: SELECT driver_id FROM driver where driver_id in (SELECT dr ...

  4. mysql查询并计算单价_Mysql--查询的成本如何计算

    查询成本组成有哪些. 1.I/O成本 2.CPU成本 3.Mysql规定读取一个页面花费的成本默认是1.0,读取以及检测一条记录是否符合搜索条件的成本默认是0.2.1.0.0.2这些数字称之为成本常数 ...

  5. mysql 查询练习——计算总订单价格大于100的订单号和总订单价格

    问题:查询总订单价格大于100的订单号和总订单价格,SQL语句如下: 答案:SELECT o_num,  SUM(quantity *item_price) AS orderTotal FROM or ...

  6. mysql查询并计算单价,sql语句查询今年单价总金额

    sqlserver : 1.  一天的订单总额 : select sum(total ) from  orders where  created_at>='2019-05-16 00:00:00 ...

  7. mysql 查询相同字段值的个数_好文 | MySQL 索引B+树原理,以及建索引的几大原则...

    MySQL事实上使用不同的存储引擎也是有很大区别的,下面猿友们可以了解一下. 一.存储引擎的比较 注:上面提到的B树索引并没有指出是B-Tree和B+Tree索引,但是B-树和B+树的定义是有区别的. ...

  8. 理解mysql 底层原理

    理解mysql 底层原理 mysql 关系数据库的一种,开源免费,支持百万级的存储性能.性能稳定.社区活跃 鉴于 本人半路出家,对于一些原理的东西都不怎么了解,正好 无所事事的情况下,翻博客,吸取知识 ...

  9. mysql 映射到map null_mybatis处理查询map列表属性为null的问题,而导致查询map无该key对象...

    1.常规处理方法(数据库以mysql为例) IFNULL(m.last_use_time,) ) ) as last_lat if判断是否为null,设置一个默认值. 2.前台jsp页面处理,判断是否 ...

最新文章

  1. 使用 CocoaPods 给微信集成 SDK 打印收发消息
  2. [USACO15JAN]踩踏Stampede
  3. Oracle的in查询
  4. 【杂谈】面向新手的深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
  5. 银行营业网点管理系统——Servlet包(CityAreaServlet )
  6. 【ARM】Tiny4412裸板编程之MMU封装
  7. centos 7安装配置vsftpd
  8. python返回类型为anytype_python判断变量类型时,为什么不推荐使用type()方法
  9. 马斯克获评最鼓舞人心科技领导者,马云排名第5
  10. 结构方程模型-调节(干扰)效应检验(一)
  11. 让Windows 7变成WIFI热点
  12. curl的安装与配置
  13. 分区助手合并移动硬盘分区后,无法访问的解决方法
  14. C语言对文本进行断句,用TextView实现富文本展示,点击断句和语音播报
  15. Linux服务器搭建----Web服务器(apache)
  16. 【腾讯云的1001种玩法】几种在腾讯云建立WordPress的方法(Linux)(二)
  17. python 获取值类型用于定义变量_Python中的变量和简单数据类型
  18. LogicalDOC8.0导入远程文件数量限制
  19. 宝塔面板Nginx防火墙安装
  20. 王者荣耀微信和QQ服务器怎么一起玩游戏,王者荣耀微信和qq能一起吗 可以一起玩吗...

热门文章

  1. micropython添加自定义模块_关于 k210 的 micropython 添加 ussl 模块,实现 https 访问支持的那些事。...
  2. C#,入门教程(27)——应用程序(Application)的基础知识
  3. 索赔激进分子和针对贝佐斯的间谍软件贸易在增长
  4. 吝啬的国度-NYOJ
  5. Google InceptionNet介绍
  6. linux 文件及文件夹命令
  7. iOS开发中一些优秀的技术博客
  8. PyCharm简单使用教程
  9. 标梵解说网站开发的初学指南
  10. 2008-07-31 郁闷的旅行之二