【问题标题】:Compare bitmasks in the H2 database比较 H2 数据库中的位掩码
【发布时间】:2016-07-21 12:36:41
【问题描述】:

有没有办法比较h2数据库中的位掩码,类似于Comparing two bitmasks in SQL to see if any of the bits match中的问题?

有一个不同角色的用户表,我想选择所有程序员用户。

用户表 ---------- ID 用户名角色 1 戴夫 6 2查理2 3 苏珊 4 4 尼克 1 角色表 ------------ 身份角色 1 名管理员 2 程序员 4 设计师

选择应该类似于

SELECT * FROM UserTable WHERE Roles & 2 != 0

我知道h2中有一个BIT_AND函数但是不知道怎么用。

【问题讨论】:

  • 一般来说,我建议使用UserRoles 表,该表使用尽可能多的行将用户链接到角色,而不是对数据进行编码,然后必须弄清楚如何对其进行解码。

标签: sql h2


【解决方案1】:

我对 BITAND 和 BIT_AND 函数感到困惑。 select 语句应该是这样的

SELECT * FROM UserTable WHERE BITAND(Roles, 2) != 0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-16
    • 2013-08-08
    • 2021-04-14
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    相关资源
    最近更新 更多