大家可以对MySQL / SqlServer二进制数据类型进行算术运算吗?
例如,我在列中存储了256位值。
我想在10000000000
(1024)和10011010100111110101
(633333)之间选择值。
数据库是否提供此功能?
或者将它存储为4个64位整数列,是从x到y选择范围的唯一方法吗?
答案 0 :(得分:2)
如果您希望数据库处理/索引/查询您的数据,请选择它理解的数据类型。对于SQL Server,BIGINT是8字节(64位),NUMERIC可以是38位(~126位)。在MySQL中,DECIMAL / NUMERIC可以达到64位或65位(~212位)。
如果你确实在这里确实有一个真正的要求,你可以将实际的重要部分“分解”到他们自己的列中。查询那些。
最直率的&不知情的解决方法案例,可以将您的256位块分成2或4个字;但如果您有任何实际要求,您应该能够确定更具体的商业利益部分。