为什么顺序不同2018开奖结果落球顺序不同

博主最新文章
博主热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
两组相同数字不同顺序相加结果不一样就这两组.怎么回事,
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
怎么回事?两组相同数字在哪里
为您推荐:
其他类似问题
扫描下载二维码写代码中的某一天,我写下了如下的代码:
Connection getConn() {
String driver = "com.mysql.jdbc.Driver";
String url = "***";
String username = "***";
String password = "***";
Connection conn = null;
PreparedStatement pst = null;
Class.forName(driver); //classLoader,加载对应驱动
conn = (Connection) DriverManager.getConnection(url, username, password);
        String sql = "select * from info info , info_extend extend where info.id = extend.infoid "
              + " order by (CASE WHEN info.pid=1006 THEN 1 ELSE 0 END) asc ,(CASE WHEN info.pid = 1006 THEN info.intext
ELSE extend.intext
END) desc "
              +
" limit 0,10";
       System.out.println(sql);       pst = (PreparedStatement) conn.prepareStatement(sql);//准备执行语句       
ResultSet rs = pst.executeQuery(); while(rs.next()){ System.out.println(rs.getString(1)+"-----"+rs.getString(2) + "-----" + rs.getString(3) + "----" + rs.getString(4)); } } catch (Exception e) { e.printStackTrace(); } return }
很明显,上面这段sql是连表查询了两张表 info 和 extend ,有两个字段进行order by ,如果pid=1006的话那就排在上面,如果pid不是1006那就按extend表的intext字段来排序,我们可以认为这两个order by 是没有问题的。
但是查询出来的结果就存在一点奇怪了,请看!
&第一次执行:
第二次执行,在看:
请注意细看,两次执行的数据的顺序发生了改变。虽然他还是按照我们的orderby的顺序排的(只是在intext值一样的时候,他就开始随机的排序了)
看到了吧,同一段sql居然会有不一样的结果(),是不是很奇葩~
我觉得很奇怪,就把sql粘下来,拿到mysql客户端去执行,结果如下
无论执行多少次,他们的顺序也不会发生变化。这就真的很奇怪了,sql都是一样的,为什么就会有不一样的结果呢。
查询了很多资料,也没找到一个比较确认的理由,只是较多人认为是由于缓存的存在。
引用一下别人的回答:
根数据库系统的算法有关,早期版本的算法是自然的多个线程二分法,那个线程先查到满足条件的数据就先输出出来,这样就是乱序的,后期经过改进按照主键自然排序输出。如果order by的值相同,一般是按自然排序,就是首个字符的字母或汉字的发音的首字母的s排序。
order by的字段自然排序,如果你的order by 字段是resort,resort值相同的情况下,是可能有两种结果,一种就是你列出的随机排序,还有一种就是按主键来排序。这个问题不是固定的,还可能跟你的服务器性能都有关系,如果内存足够大,执行mysql的时候会提供足够大的缓冲池,也可能会出现另一种结果。
&所以很有可能是因为缓存的存在,在mysql客户端存在缓存,然后每一次查询都走缓存所以他的顺序不会发生改变。然而执行java程序顺序不一致,可能就是因为没有走缓存,每一次都是实时查询。也许java程序的这种结果本身就具有更多的可靠性。
还有一个很奇怪的现象:有时候java程序的结果是不会变的,有时候就是会发生变化的。这一点很令人疑惑,但同时也更肯定了缓存的因素。
那如何解决这个问题?
很简单,他不是顺序有时会不一致吗,那我们再给他一个顺序进行排序就好了。在order by 后面加上 id desc &, 那么我们的查询结果就是一致了的。
阅读(...) 评论()查看: 1201|回复: 4
大家一起来说说同一区域选择顺序不同导致的不同结果
阅读权限70
在线时间 小时
& & & & & & & &
工作中偶尔会发现,同一个区域,不同的选中顺序,操作后会带来不同的结果。
我先举个例子:一个常规格式的单元格数字和一个百分比格式的单元格数值。鼠标先选常规后选百分比,则在状态栏的求和中显示的数据为数字;鼠标先选百分比后选常规,则在状态栏的求和中显示的数据为百分数
选择顺序不同则显示不同.gif (56.4 KB, 下载次数: 9)
08:20 上传
该贴已经同步到
阅读权限50
在线时间 小时
是不是默认第一个选择的数据格式啊
阅读权限50
在线时间 小时
是以最先的数据的格式为主
阅读权限70
在线时间 小时
目前看来就是以最先选中的为准
阅读权限70
在线时间 小时
对比两列数据不同的数值。定位——定位条件——行内容差异单元格
这时候从哪一列开始选就至关重要,关系到最后选中的数值在那一列。。
最新热点 /1
ExcelHome携手凤凰新华书店以及北大出版社投入巨资回馈粉丝!最新畅销图书《Excel 2016应用大全》折上加折,最终购买价=5.2折!简直没下限!并且,本书还参加了京东满110减50活动!活动时间,即日起至4月20日。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师

我要回帖

更多关于 羊穿结果通知顺序 的文章

 

随机推荐