SQLITE检查id是否具有特定值

安德烈亚斯B

我有一个这样的SQLITE表:

id      key      value
244574  16       999
244574  18       999
244574  54       174
214808  16       662
214808  17       808
214808  33       1
214808  60       2
214809  16       902 
214809  17       1103
214809  33       1
214809  60       2
218965  19       808
218965  21       662
218965  33       1
218965  60       8
218966  19       1103
218966  21       902
218966  33       1
218966  60       8

小提琴:单击此处

现在,我尝试获取一个ID列表,其中键不是60或键是60且value = 8。

select * from items_attributes where (key != 60) OR (key = 60 AND value = 8);

我经常得到那些键不是60的行。但是我只想得到三行:

id      key           value
244574  [16;18;54]    [999;999;174]
218965  [19;21;33;60] [808;662;1;8]
218966  [19;21;33;60] [1103;902;1;8]

因为我是SQL的初学者,所以我可以想到使用concat的解决方案,但是我不知道tbh。也许有人可以在这里帮助我。

提前致谢!

最好的问候,安德里亚斯

亚历克斯·K

怎么样:

select 
    id,
    '[' || group_concat(key, ';') || ']',
    '[' || group_concat(value, ';') || ']'
from items_attributes
group by id
having 
    -- no rows with key 60 for this id
    count(case when key = 60 then 1 end) = 0 
or 
    -- 1 or more rows with key 60 & value 8 for this id
    count(case when key = 60 and value = 8 then 1 end) > 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Java中的Optional检查是否为null以及是否具有特定值?

在写入变量之前检查变量是否具有特定值是否明智?

如何使用Java Spring在MongoDB中检查特定字段是否具有特定值?

如何使用Java Spring在MongoDB中检查特定字段是否具有特定值?

如何检查<li>元素是否具有特定值

检查element是否具有特定的类并属于包含特定值的表单

具有特定id值的嵌套GraphQL查询是否可能?

AngularJS-如何检查特定键在数组中是否具有特定值

检查用户是否具有特定角色

检查列表中是否存在具有特定值的对象

如何检查特定列在数据框中是否具有特定值?

检查结果集是否具有特定值

检查数组是否包含具有特定属性值的对象

检查行是否具有特定值(perl,mysql)

检查是否存在具有特定值的XElement

检查用户是否在视图中具有具有特定值的属性

如何检查具有特定值的项目是否属于SelectList?

检查具有相同ID的DB中的记录在字段中是否具有不同的值

检查$ _GET是否可用并具有特定值?

R检查向量的至少20%是否具有特定值

检查列表中是否存在具有特定值的字典

检查数据表是否具有特定值,然后删除此值

检查元素是否具有特定的 id

如何检查变量列表是否具有特定值?

如何检查具有多个值的枚举类型参数是否具有特定的枚举类型

如何检查具有特定 ID 的用户是否存在?

检查行是否存在具有特定值

检查数组是否具有相同的值

如何检查ajax数据是否具有某些特定值