選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

BIT_AND 函數

焦點模式
BIT_AND 函數 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

BIT_AND 函數會對單一整數欄或表達式中的所有值執行位元 AND 操作。此函數會彙總每一個二進位值 (對應於表達式中的每一個整數值) 的每一個位元。

如果所有值之中沒有任何位元設為 1,BIT_AND 函數會傳回結果 0。如果所有值之中有一或多個位元設為 1,此函數會傳回整數值。此整數是對應於那些位元的二進位值的數字。

例如,資料表有一欄包含四個整數值:3、7、10 及 22。這些整數以二進位格式表示如下:

Integer 二進位值
3 11
7 111
10 1010
22 10110

此資料集的 BIT_AND 操作發現所有位元只在倒數第二個位置設為 1。結果為 00000010 的二進位值,代表整數值 2。因此,BIT_AND 函數會傳回 2

語法

BIT_AND ( [DISTINCT | ALL] expression )

引數

expression

函數運算的目標欄或表達式。此表達式必須為 INT、INT2 或 INT8 資料類型。此函數會傳回同等的 INT、INT2 或 INT8 資料類型。

DISTINCT | ALL

如果指定引數 DISTINCT,則函數在計算結果之前,將消除指定之表達式的所有重複值。如果指定引數 ALL,則函數會保留所有重複值。ALL 為預設值。如需詳細資訊,請參閱位元彙整的 DISTINCT 支援

範例

由於整數欄中儲存有意義的商業資訊,您可以使用位元函數來擷取和彙總該資訊。下列查詢將 BIT_AND 函數套用至名為 USERLIKES 之資料表中的 LIKES 欄,並依 CITY 欄將結果分組。

select city, bit_and(likes) from userlikes group by city order by city; city | bit_and --------------+--------- Los Angeles | 0 Sacramento | 0 San Francisco | 0 San Jose | 64 Santa Barbara | 192 (5 rows)

您可將這些結果解釋如下:

  • Santa Barbara 的整數值 192 轉換為二進位值 11000000。換言之,此城市的所有使用者都喜歡運動和戲劇,但並非所有使用者還喜歡其他任何一種活動。

  • 整數 64 轉換為 01000000。因此,對於 San Jose 中的使用者而言,他們全部都喜歡的一種活動只有戲劇。

  • 其他三個城市的值為 0,表示那些城市的所有使用者沒有共同的「愛好」。

下一個主題:

BIT_OR

上一個主題:

位元彙整函數

在本頁面

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。