作者cutekid (可爱小孩子)
看板Database
标题Re: [SQL] sqlite的bug?
时间Sun Oct 22 20:51:59 2017
大家好,
我後来有向原 PO 要资料来追问题
结论是这样的:
1. 当 rowid <= 61 时, close 的 type 是 text
2. 当 rowid > 61 时, close 的 type 是 real
ps. 可用 typeof(close) 来看当时的 type
因为在 sqlite 里面:
text 比 real、integer 都要大
所以就能解释 rowid <= 62 时:
max(close) = '.97' ← 因为 text > real,然後再从 text 里面取最大
min(close) = 1.03 ← 因为 real < text,然後再从 real 里面取最小
这样奇怪的现象
※ 引述《cert889 (展翅高飞)》之铭言:
: ※ [本文转录自 Programming 看板 #1Pw-F170 ]
: 作者: cert889 (展翅高飞) 看板: Programming
: 标题: [问题] sqlite的bug?
: 时间: Sun Oct 22 08:18:06 2017
: Hi, all
: 我在使用sqlite的Max和Min时,发生奇怪的问题如下:
: SQLite version 3.20.1 2017-08-24 16:21:36
: Enter ".help" for usage hints.
: sqlite> SELECT Max(close) FROM Daily WHERE rowid<=62;
: .97
: sqlite> SELECT Min(close) FROM Daily WHERE rowid<=62;
: 1.03
: sqlite> SELECT Max(close) FROM Daily WHERE rowid<=61;
: .97
: sqlite> SELECT Min(close) FROM Daily WHERE rowid<=61;
: .76
: 如上所示,rowid<=61时,可以正常取Max和Min值
: 但rowid<=62时,Min值居然大於Max值??
: 请问有人知道rowid=62时,发生了什麽事吗?....囧>
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.168.18.5
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1508676721.A.623.html
※ cert889:转录至看板 Programming 10/22 22:01
1F:推 meteor007: 高手! 10/25 14:37