int 값이있는 테이블이 있습니다 (각 비트는 플래그입니다).이진수와 합계 비트 필드 값
이제나는 (내 경우 또는) 이항 연산로 집계 싶습니다 그래서 :
SELECT 1 AS bitfield
INTO #TABLE
UNION ALL SELECT 1 + 2 + 8 + 32
UNION ALL SELECT 2 + 128
UNION ALL SELECT 2 + 32
SELECT AND_AGGR(bitfield) -- Invalid because AND_AGGR doesn't exist
FROM #TABLE
DROP #TABLE
의 값이 초래 171
이 작업을 수행 할 수있는 좋은 방법이 될 것입니다 무엇 그 희망을 많이하지 않아도 |
과 MAX
(하지만 꼭해야하는 경우)?
저는 MS SQL Server 2008을 직접 사용하고 있지만 다른 서버의 솔루션도 중요합니다.
"지금은 이진 연산으로 집계하고 싶습니다. (내 경우 AND)"AND "가 아닌"OR "가 확실합니까? –
물론 그렇습니다. 나는 그것을 바꿀 것이다. 그것을 지적 해 주셔서 감사합니다 :) – ANisus