是否可以有效地使用按位運算來比較兩個值,其中第二個值是第一個值的超集?將值與按位運算進行比較
如果我將屬性1,2和3設置爲ON,則需要將其與屬性1和2可以打開的值或OF和3必須打開的值相匹配。
enum user_attribs {
attrib1 = 0, attrib2 = 1, attrib3 = 2
}
enum spt_attribs {
attrib1 = 0, attrib2 = 1, attrib3 = 2
}
user_attribs u1 = attrib1 & attrib2 & attrib3;
spt_attribs s1 = attrib1 & attrib2 | attrib3;
u1 = s1
會在SQL中使用上面的代碼有效嗎?
更新:RDBMS是SQL SERVER 2008 R2。我試圖比較數據庫中存儲的屬性。我希望能夠將「用戶簡檔」的價值與「系統簡檔」的價值進行比較,其中系統簡檔是用戶的超集,例如,用戶配置文件應與系統配置文件匹配。如果用戶的位設置爲1101
它將匹配系統位1101
或1001
或1100
等。我需要系統配置文件匹配SQL語句的「WHERE」子句中的兩個設置。
什麼是 「比較成功的價值」 呢? –