我有一个非常复杂的查询(至少对于我的初学者级别),所以我希望任何人都可以帮助我。
这是我的表格的一个例子:
Device nr type state I1 I2
1 A on 20 10
1 A off 20 10
1 B on 19 8
1 B off 20 10
1 C on 21 12
1 C off 20 10
2 A on 21 9
2 A off 20 10
2 B on 18 7
2 B off 20 10
2 C on 20 9
2 C off 20 10
3 A on 17 11
3 A off 20 10
3 B on 20 11
3 B off 20 10
3 C on 19 10
3 C off 20 10
1 A on 20 10
1 A off 20 10
1 B on 19 8
1 B off 20 10
1 C on 21 12
1 C off 20 10
2 A on 21 9
2 A off 20 10
2 B on 18 7
2 B off 20 10
2 C on 20 9
2 C off 20 10
3 A on 17 11
3 A off 20 10
3 B on 20 11
3 B off 20 10
3 C on 19 10
3 C off 20 10
我的问题是如何对被认为正常的设备进行分组和计数。
当设备中的所有类型(A,B和C)都正常时,设备正常。
如果"on" state
有I1>19
和I2<11
,则输入A或B或C即可。
凭借我有限的SQL经验,我知道如何设置条件:
select (*) from myTalbe
where (I1>19 and I2<11)
但是,如果A
和B
以及C
合适且所有人都有Device nr
,我该如何计算呢?
所需输出的示例如下:
Device nr OKcount
1 15
2 9
3 22
因此,举例来说,这个输出会说15个设备的编号1在设备中有A和B以及C ok
答案 0 :(得分:1)
最终确定konart答案的冷静方法:
Math.floor(25.54864869) // 25