当每个表都有一个用于保存一些位掩码枚举的字段时,我有一个 sqlite 表。
我想执行一个查询,它将返回所有结果并将所有枚举分组到一个字段中:
服务:TEXT 名称、INTEGER 服务、INTEGER 掩码
SELECT service,XXX FROM Services GROUP BY service
基本上,我希望 XXX 是每个服务的所有掩码的位掩码 OR (|) 的结果。
数据:
'a1',1,1
'a2',1,2,
'a3',1,4,
'a4',1,8,
'b1',2,1,
'b2',2,3,
'b3',2,2
因此,我想获得以下行:
1,15 (1|2|4|8)
2,3 (1|3|2)
谢谢
编辑: 在我原来的问题中,我忘了提到每个掩码不是一个位,而是可以是多个位的掩码(我已经更改了第二个示例以反映这一点)。