Mysql查询原理、计算属性理解
例如下面的是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查询原理、计算属性理解相关推荐
- 在MySQL查询中计算一个人的年龄
最近在Phpfreaks.com论坛上提出了一个问题,即有人使用MySQL数据库存储用户出生日期的最佳方式.一个人建议使用varchar,因为他们最熟悉字符串函数.我的回答是使用MySQL日期类型. ...
- MySQL查询原理简述
一:MySQL查询 1:单表查询 根据where条件过滤表中的记录,每过滤一次形成一张中间表(中间表对用户是不可见的).然后根据select的选择列返回最终的结果. 2:两张表连接查询 对两表求积(笛 ...
- mysql in 原理_深入理解MySql子查询IN的执行和优化
IN为什么慢? 在应用程序中使用子查询后,SQL语句的查询性能变得非常糟糕.例如: SELECT driver_id FROM driver where driver_id in (SELECT dr ...
- mysql查询并计算单价_Mysql--查询的成本如何计算
查询成本组成有哪些. 1.I/O成本 2.CPU成本 3.Mysql规定读取一个页面花费的成本默认是1.0,读取以及检测一条记录是否符合搜索条件的成本默认是0.2.1.0.0.2这些数字称之为成本常数 ...
- mysql 查询练习——计算总订单价格大于100的订单号和总订单价格
问题:查询总订单价格大于100的订单号和总订单价格,SQL语句如下: 答案:SELECT o_num, SUM(quantity *item_price) AS orderTotal FROM or ...
- mysql查询并计算单价,sql语句查询今年单价总金额
sqlserver : 1. 一天的订单总额 : select sum(total ) from orders where created_at>='2019-05-16 00:00:00 ...
- mysql 查询相同字段值的个数_好文 | MySQL 索引B+树原理,以及建索引的几大原则...
MySQL事实上使用不同的存储引擎也是有很大区别的,下面猿友们可以了解一下. 一.存储引擎的比较 注:上面提到的B树索引并没有指出是B-Tree和B+Tree索引,但是B-树和B+树的定义是有区别的. ...
- 理解mysql 底层原理
理解mysql 底层原理 mysql 关系数据库的一种,开源免费,支持百万级的存储性能.性能稳定.社区活跃 鉴于 本人半路出家,对于一些原理的东西都不怎么了解,正好 无所事事的情况下,翻博客,吸取知识 ...
- mysql 映射到map null_mybatis处理查询map列表属性为null的问题,而导致查询map无该key对象...
1.常规处理方法(数据库以mysql为例) IFNULL(m.last_use_time,) ) ) as last_lat if判断是否为null,设置一个默认值. 2.前台jsp页面处理,判断是否 ...
最新文章
- 使用 CocoaPods 给微信集成 SDK 打印收发消息
- [USACO15JAN]踩踏Stampede
- Oracle的in查询
- 【杂谈】面向新手的深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
- 银行营业网点管理系统——Servlet包(CityAreaServlet )
- 【ARM】Tiny4412裸板编程之MMU封装
- centos 7安装配置vsftpd
- python返回类型为anytype_python判断变量类型时,为什么不推荐使用type()方法
- 马斯克获评最鼓舞人心科技领导者,马云排名第5
- 结构方程模型-调节(干扰)效应检验(一)
- 让Windows 7变成WIFI热点
- curl的安装与配置
- 分区助手合并移动硬盘分区后,无法访问的解决方法
- C语言对文本进行断句,用TextView实现富文本展示,点击断句和语音播报
- Linux服务器搭建----Web服务器(apache)
- 【腾讯云的1001种玩法】几种在腾讯云建立WordPress的方法(Linux)(二)
- python 获取值类型用于定义变量_Python中的变量和简单数据类型
- LogicalDOC8.0导入远程文件数量限制
- 宝塔面板Nginx防火墙安装
- 王者荣耀微信和QQ服务器怎么一起玩游戏,王者荣耀微信和qq能一起吗 可以一起玩吗...