I have a problem with using Bitwise operators in Postgres I get the following error message
ERROR: argument of WHERE must be type boolean, not type integer
My query looks as below
SELECT DISTINCT number,name,contact,special FROM clients WHERE special & 2048;
Any help will be appreciated
1 Answer 1
You'll need to do a comparison:
SELECT DISTINCT number, ..., special FROM clients WHERE special & 2048 = 2048;
or
SELECT DISTINCT number, ..., special FROM clients WHERE special & 2048 > 0;
answered Jul 30, 2009 at 9:42
Tomalak
340k68 gold badges547 silver badges635 bronze badges
Sign up to request clarification or add additional context in comments.
1 Comment
Lukas Eder
Just in case the (signed) literal is negative, comparing
<> 0 might be a safer bet.lang-sql