Hi, Andrew,

It appears that the packed option might be a more reasonable one.  You 
can pack  up to 32 boolean flags in a 32-bit integer (ibis::INT or 
ibis::UINT).  The parser understands "packedflags & 0100101001" as a 
bitwise expression (following C/C++ definition of bitwise operations 
between integral types).  However, the constant  0100101001 would be 
parsed as a decimal integer.  One may prefix the number with 0x (or 
0X) for a hexadecimal number, but there is not way to input a binary 
number.

Please feel free to let us know if you encounter any problems.

John


On 8/31/2009 11:26 AM, Andrew Olson wrote:
> Hi.
> I'm considering creating a table using FastBit that has many boolean  
> columns, but it appears that the 8 bit char types are the most compact  
> format available.  I could pack them into an unsigned long int, rather  
> than store them as separate shorts, but queries on such a column  
> (e.g., "packedflags & 0100101001 != 0") would not be able to take  
> advantage of the index.
> 
> I have 2 questions.
> 1. Are queries like that even possible in FastBit?
> 2. Is there a space and time efficient way to represent and query  
> these boolean variables?
> 
> Thanks,
> Andrew
> _______________________________________________
> FastBit-users mailing list
> [email protected]
> https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users
_______________________________________________
FastBit-users mailing list
[email protected]
https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users

Reply via email to