如何从sqlite3数据库获取温度的最小/最大值?

时间:2019-01-10 08:25:12

标签: sqlite temperature

我有sqlite3数据库,其表中存储的温度是这样的:

数据|地址|温度

2019-01-06 19:00:17 | 28FF24E08416043D | 12.6

2019-01-06 19:05:50 | 28FF24E08416043D | -1.0

2019-01-06 19:10:17 | 28FF24E08416043D | 18.0

2019-01-06 19:15:17 | 28FF24E08416043D | -4.4

2019-01-06 19:20:16 | 28FF24E08416043D | -7.3

2019-01-06 20:50:18 | 28FF24E08416043D | -8.1

我需要获取2个值(今天的最小值和最大值),例如:-8,1&18,0,但这没有发生。

如果我尝试:

async

我有: 2019-01-06 19:05:50 | -1.0

这是不正确的,因为这一天的低温是-8,1 另一方面,如果我尝试使用最大值,我将得到18,0-好 但是在另一天,我只低于零值,最小值为-9,9,最大值为-10,0

我很困惑,如何正确进行?

1 个答案:

答案 0 :(得分:0)

您必须将temperatura强制转换为小数:

SELECT data,min(CAST(temperatura as decimal)) FROM czujniki 
    where adres='28FF24E08416043D' and data>='2019-01-06' and data<='2019-01-07'

当然,最好将temperatura列重新定义为decimalnumeric,而不是 text,以避免这些问题。