当前位置: 首页 > news >正文

四川网站备案核验单两阳夹一阴后续走势

四川网站备案核验单,两阳夹一阴后续走势,专业建站公司联系方式,wordpress网站速度时快时慢本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/database/having_without_groupby_in_mysql.html 今天有同学给我反应#xff0c;有一张表#xff0c;id是主键#xff0c;这样的写法可…本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/database/having_without_groupby_in_mysql.html 今天有同学给我反应有一张表id是主键这样的写法可以返回一条记本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/database/having_without_groupby_in_mysql.html今天有同学给我反应有一张表id是主键这样的写法可以返回一条记录“SELECT * FROM t HAVING idMIN(id);”但是只是把MIN换成MAX这样返回就是空了“SELECT * FROM t HAVING idMAX(id);”这是为什么呢我们先来做个试验验证这种情况。这是表结构初始化两条记录然后试验rootlocalhost : plx 10:25:10 show create table t2\G*************************** 1. row ***************************Table: t2Create Table: CREATE TABLE t2 (a int(11) DEFAULT NULL,id int(10) unsigned NOT NULL AUTO_INCREMENT,PRIMARY KEY (id)) ENGINEInnoDB AUTO_INCREMENT5 DEFAULT CHARSETutf8rootlocalhost : plx 10:25:15 select * from t2;----------| a | id |----------| 1 | 1 || 1 | 3 |----------rows in set (0.00 sec)rootlocalhost : plx 10:25:20 SELECT * FROM t2 HAVING idMIN(id);----------| a | id |----------| 1 | 1 |----------row in set (0.00 sec)rootlocalhost : plx 10:25:30 SELECT * FROM t2 HAVING idMAX(id);Empty set (0.00 sec)初看之下好像真的是这样哎怎么会这样呢我再试一下把a字段改一个为10然后试下a字段rootlocalhost : plx 10:26:58 select * from t2;----------| a | id |----------| 10 | 1 || 1 | 3 |----------rows in set (0.00 sec)rootlocalhost : plx 10:28:20 SELECT * FROM t2 HAVING aMAX(a);----------| a | id |----------| 10 | 1 |----------row in set (0.00 sec)rootlocalhost : plx 10:28:28 SELECT * FROM t2 HAVING aMIN(a);Empty set (0.00 sec)我擦这回MAX能返回MIN不能了这又是为啥呢旁白一般来说HAVING子句是配合GROUP BY使用的单独使用HAVING本身是不符合规范的但是MySQL会做一个重写加上一个GROUP BY NULL”SELECT * FROM t HAVING idMIN(id)”会被重写为”SELECT * FROM t GROUP BY NULL HAVING idMIN(id)”这样语法就符合规范了。继续……但是这个 GROUP BY NULL 会产生什么结果呢经过查看代码和试验可以证明GROUP BY NULL 等价于 LIMIT 1rootlocalhost : plx 10:25:48 SELECT * FROM t2 GROUP BY NULL;----------| a | id |----------| 10 | 1 |----------row in set (0.00 sec)也就是说GROUP BY NULL 以后只会有一个分组里面就是第一行数据。但是如果这样MIN、MAX结果应该是一致的那也不应该MAX和MIN一个有结果一个没结果啊这是为什么呢再做一个测试。修改一下数据然后直接查看MIN/MAX的值rootlocalhost : plx 10:26:58 select * from t2;----------| a | id |----------| 10 | 1 || 1 | 3 |----------rows in set (0.00 sec)rootlocalhost : plx 10:27:04 SELECT * FROM t2 GROUP BY NULL;----------| a | id |----------| 10 | 1 |----------row in set (0.00 sec)rootlocalhost : plx 10:30:21 SELECT MAX(a),MIN(a),MAX(id),MIN(id) FROM t2 GROUP BY NULL;----------------------------------| MAX(a) | MIN(a) | MAX(id) | MIN(id) |----------------------------------| 10 | 1 | 3 | 1 |----------------------------------row in set (0.00 sec)是不是发现问题了MAX/MIN函数取值是全局的而不是LIMIT 1这个分组内的。因此当GROUP BY NULL的时候MAX/MIN函数是取所有数据里的最大和最小值所以啊”SELECT * FROM t HAVING idMIN(id)”本质上是”SELECT * FROM t HAVING id1″, 就能返回一条记录而”SELECT * FROM t HAVING idMAX(id)”本质上是”SELECT * FROM t HAVING id3″当然没有返回记录这就是问题的根源。测试一下GROUP BY a这样就对了每个分组内只有一行所以MAX/MIN一样大这回是取得组内最大和最小值。rootlocalhost : plx 11:29:49 SELECT MAX(a),MIN(a),MAX(id),MIN(id) FROM t2 GROUP BY a;----------------------------------| MAX(a) | MIN(a) | MAX(id) | MIN(id) |----------------------------------| 1 | 1 | 3 | 3 || 10 | 10 | 5 | 5 |----------------------------------rows in set (0.00 sec)GROUP BY NULL时MAX/MIN的行为是这个问题的本质所以啊尽量使用标准语法玩花样SQL之前一定要搞清楚它的行为是否与理解的一致。Enjoy MySQL!本条技术文章来源于互联网如果无意侵犯您的权益请点击此处反馈版权投诉本文系统来源php中文网
http://www.pierceye.com/news/345834/

相关文章:

  • 山东省建设工程质量监督网站广州软件合作中心
  • 郑州网站建设怎么样通州建设局网站
  • 免费网站建设福州怎么修改网站主页
  • 深圳企业建站设计公司wordpress不显示样式
  • 外贸网站商城广东省建设协会网站
  • 杭州制作企业公司网站wordpress数据库添加用户
  • 主域名进入网站广告标识标牌制作厂家
  • 网站建设基础流程摘要专题网站建设策划
  • 滁州网站建设电话网站建设与网站优化
  • 慈溪做网站公司哪家好淘宝商城的网站建设
  • 安徽建设厅网站怎么打不开太原网络搭建
  • idea 网站开发最好的免费推广平台
  • 专业排名优化网站怎么建网站教程视频app
  • 全国八大员报名官方网站支付宝小程序开发工具
  • 怎么查看vps网站服务器时间中国建设会计协会网站
  • 门户网站上的广告怎么做深圳服装网站建设
  • 公司网站上线的通知抚州营销型网站建设
  • 中国住房城乡和城乡建设部网站小广告文案
  • 做带字头像的网站wordpress 翻页设置
  • 网站横幅js代码公众号如何申请
  • 找网站建设需要问什么软件物联网平台功能
  • 含山县城市建设有限公司网站成都中高风险地区名单最新
  • 鄂州手机网站建设深圳seo网站设计
  • 网站内容的实现方式建筑设计人才招聘
  • 网站做优化效果怎样iis怎么做网站空间
  • 重庆市建设局网站郑州网站建设哪一家好
  • wordpress指定分类广告金融网站排名优化
  • 美妆网站建设方案陕西网络公司网站建设
  • 北京地铁建设的网站深圳建网站兴田德润可信
  • 平台门户网站建设企业战略规划方案