待解决问题
bulingbuling^_^
这个作者很懒,什么都没留下…
展开
-
用商户订单号作为查询条件时,发生的隐式类型转换。
trade_no是varchar型。 select id,ptn from aep where trade_no = 1548196371202011129123456789结果:发现结果和预想结果不一样,经查询时发生了隐式类型转换。此处应该是转为了浮点数进行比较。在数值较大时,转为浮点数会造成精度丢失。(较大具体时多大,没找到答案。。。)我在上面的条件中试出的是在17位以后可以更改,查询结果一致(具体涉及到类型转换)mysql 隐式类型转化规则 两个参数至少有一个是原创 2020-11-04 15:34:54 · 230 阅读 · 0 评论 -
重写了equals()就必须要重写hashCode()的原因。
重写了equals()就必须要重写hashCode()的原因:首先java里面有集合,如hashmap,hashset等。相信都用过HashMap。根据key,可取value值。key不能重复,value可以重复是他的特点。说明key 是唯一的。然后你为何要重写了equals()呢?是默认的equals()方法不符合你的要求,你自定义在某种情况下,对象Object的equals是true的。那就会出现下面这种情况。public class t { public static vo原创 2020-10-04 15:48:56 · 111 阅读 · 0 评论 -
数据库联表查询,增加一个结果字段,为何会改变排序的顺序?
记一个问题,有缘再解释。同属与MYSQL数据库顶层排序机制的问题。1.数据库联表查询,增加一个结果字段,排序的顺序改变SELECT id, name, type, cts.hot FROM CT ct LEFT JOIN CTS cts ON cts.topic_id = ct.id ORDER BY cts.hot ASC然后条件不变只是取消type的查询。SELECT id, name, cts.hot FROM CT ct LEFT JOIN C原创 2020-09-27 17:10:38 · 632 阅读 · 1 评论 -
数据库联表查询,用第二张表的独有字段排序,为何会乱序?
记一个问题,有缘再解释。解决办法其实就是order by指明唯一确定的字段 如order by id。此处是想知道MYSQL底层排序原理。1.数据库联表查询,用第二张表的独有字段排序时,乱序SELECT id, name, type, cts.hot FROM CT ct LEFT JOIN CTS cts ON cts.topic_id = ct.id ORDER BY cts.hot ASC当排序的条件一样时,为何会以此种顺序显示,且不会出现多次搜索排序结果不一致的情况.原创 2020-09-27 17:01:51 · 521 阅读 · 0 评论