Amazon Redshift 將不再支援在 2026 年 6 月 30 日之後使用 Python UDFs。我們將開始分階段強制執行。如需 Python 生命週期結束和遷移選項的詳細資訊,請參閱 2025 年 6 月 30 日發佈的部落格文章
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
VARBYTE 運算子
下表會列出 VARBYTE 運算子。此運算子使用資料類型 VARBYTE 的二進位值。如果一個或兩個輸入都為 null,則結果為 null。
支援的運算子
| 運算子 | 說明 | 傳回類型 |
|---|---|---|
| < | Less than | BOOLEAN |
| <= | Less than or equal | BOOLEAN |
| = | 等於 | BOOLEAN |
| > | Greater than | BOOLEAN |
| >= | Greater than or equal | BOOLEAN |
| != 或 <> | 不等於 | BOOLEAN |
| || | 串連 | VARBYTE |
| + | 串連 | VARBYTE |
| ~ | 位元 not | VARBYTE |
| & | 位元 and | VARBYTE |
| | | 位元 or | VARBYTE |
| # | 位元 xor | VARBYTE |
範例
在下列範例中,'a'::VARBYTE 的值為 61,'b'::VARBYTE 的值為 62。:: 將字串轉換為 VARBYTE 資料類型。如需轉換資料類型的相關資訊,請參閱 CAST。
若要使用 < 運算子比較 'a' 是否小於 'b',請使用下列範例。
SELECT 'a'::VARBYTE < 'b'::VARBYTE AS less_than;+-----------+ | less_than | +-----------+ | true | +-----------+
若要使用 = 運算子來比較 'a' 是否等於 'b',請使用下列範例。
SELECT 'a'::VARBYTE = 'b'::VARBYTE AS equal;+-------+ | equal | +-------+ | false | +-------+
若要使用 || 運算子連接兩個二進位值,請使用下列範例。
SELECT 'a'::VARBYTE || 'b'::VARBYTE AS concat;+--------+ | concat | +--------+ | 6162 | +--------+
若要使用 + 運算子連接兩個二進位值,請使用下列範例。
SELECT 'a'::VARBYTE + 'b'::VARBYTE AS concat;+--------+ | concat | +--------+ | 6162 | +--------+
若要使用 FROM_VARBYTE 函數求反輸入二進位值的每一位,請使用下列範例。字串 'a' 評估為 01100001。如需詳細資訊,請參閱FROM_VARBYTE。
SELECT FROM_VARBYTE(~'a'::VARBYTE, 'binary');+--------------+ | from_varbyte | +--------------+ | 10011110 | +--------------+
若要在兩個輸入二進位值上套用 & 運算子,請使用下列範例。字串 'a' 評估為 01100001 且 'b' 評估為 01100010。
SELECT FROM_VARBYTE('a'::VARBYTE & 'b'::VARBYTE, 'binary');+--------------+ | from_varbyte | +--------------+ | 01100000 | +--------------+