我的 SQL 表中有 15 个 boolean 列。 我想以一种有效的方式查询而不使用:
"bool1 = bool1Val AND bool2=bool2Val AND bool3=bool3Val....."
有什么办法可以做得更好吗?
非常感谢
最佳答案
您可以将这些列组合成一个由 0 和 1 组成的字符串列,并在单个查询中读取它们,例如 0011 表示 false false true true。
有一个 char 16 来存储它。 (只是数据库优化)
// courtesy @amitmahajan comment
String selectTableSQL = "SELECT USER_FLAGS from DBUSER";
Statement statement = dbConnection.createStatement();
ResultSet rs = statement.executeQuery(selectTableSQL);
while (rs.next())
{
String userFlags = rs.getString("USER_FLAGS”);
boolean isUserEnabled = userFlags.charAt(0)==1?true:false;
}
关于java - MySql - 如何查询多个 boolean 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31562032/