Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2

9.5. Chức năng cách đọc kèo bóng đá và toán tử#

Phần này mô tả các chức năng và toán tử để kiểm tra và thao tác các cách đọc kèo bóng đá, đó là các giá trị của loạibytea. Nhiều trong số này là tương đương, về mục đích và cú pháp, với các hàm cách đọc kèo bóng đá văn bản được mô tả trong phần trước.

SQLXác định một số hàm cách đọc kèo bóng đá sử dụng các từ khóa, thay vì dấu phẩy, để phân tách các đối số. Chi tiết trongBảng 9.11. PostgreSQLCũng cung cấp các phiên bản của các cách đọc kèo bóng đá này sử dụng cú pháp gọi cách đọc kèo bóng đá chính quy (xemBảng 9.12).

Bảng 9.11.SQLChức năng cách đọc kèo bóng đá và toán tử

cách đọc kèo bóng đá/Toán tử

Mô tả

Ví dụ (s)

bytea || byteabytea

nối hai cách đọc kèo bóng đá.

'\ x123456' :: bytea || '\ x789a00bcde' :: bytea\ x123456789A00BCDE

bit_length(bytea) →Số nguyên

Trả về số bit trong cách đọc kèo bóng đá (8 lầnoctet_length).

bit_length ('\ x123456' :: bytea)24

Btrim(byte bytea, bytesremove bytea) →bytea

Xóa cách đọc kèo bóng đá dài nhất chỉ chứa byte xuất hiện trongbytesremoveTừ đầu và cuối củabyte.

btrim ('\ x1234567890' :: bytea, '\ x9012' :: bytea)\ x345678

LTRIM(byte bytea, bytesremove bytea) →bytea

Xóa cách đọc kèo bóng đá dài nhất chỉ chứa byte xuất hiện trongbytesremoveTừ đầubyte.

ltrim ('\ x1234567890' :: bytea, '\ x9012' :: bytea)\ x34567890

octet_length(bytea) →Số nguyên

Trả về số byte trong cách đọc kèo bóng đá.

octet_length ('\ x123456' :: bytea)3

Lớp phủ(byte bytea Đặt newsubString bytea từ Bắt đầu Số nguyên[cho Đếm Số nguyên]) →bytea

Thay thế cách đọc kèo bóng đá con củabytebắt đầu từBắt đầu'th byte và mở rộng choĐếmbyte vớiNewsubString. Nếu nhưĐếmbị bỏ qua, nó mặc định theo chiều dàiNewsubString.

lớp phủ ('\ x1234567890' :: bytea đặt '\ 002 \ 003' :: bytea từ 2 cho 3)\ x12020390

vị trí(Subring bytea in byte bytea) →Số nguyên

Trả về chỉ mục bắt đầu đầu tiên của được chỉ địnhSubringtrongbytehoặc không nếu nó không có mặt.

vị trí ('\ x5678' :: bytea trong '\ x1234567890' :: bytea)3

rtrim(byte bytea, bytesremove bytea) →bytea

Xóa cách đọc kèo bóng đá dài nhất chỉ chứa byte xuất hiện trongbytesremoveTừ cuốibyte.

rtrim ('\ x1234567890' :: bytea, '\ x9012' :: bytea)\ x12345678

Subring(byte bytea[từ Bắt đầu Số nguyên] [cho Count Số nguyên]) →bytea

trích xuất cách đọc kèo bóng đá con củabyteBắt đầu từBắt đầu'th byte nếu điều đó được chỉ định và dừng sauĐếmByte nếu được chỉ định. Cung cấp ít nhất một trong sốBắt đầuĐếm.

Subring ('\ x1234567890' :: bytea từ 3 cho 2)\ x5678

Trim([Dẫn đầu | Trailing | Cả]bytesremove bytea từ byte bytea) →bytea

Xóa cách đọc kèo bóng đá dài nhất chỉ chứa byte xuất hiện trongbytesremoveTừ đầu, kết thúc hoặc cả hai đầu (cảlà mặc định) củabyte.

Trim ('\ x9012' :: bytea từ '\ x1234567890' :: bytea)\ x345678

Trim([Dẫn đầu | Trailing | cả hai] [từ]byte bytea, bytesremove bytea) →bytea

Đây là cú pháp không chuẩn choTrim ().

Trim (cả hai từ '\ x1234567890' :: bytea, '\ x9012' :: bytea)\ x345678


Các chức năng thao tác cách đọc kèo bóng đá bổ sung có sẵn và được liệt kê trongBảng 9.12. Một số trong số chúng được sử dụng nội bộ để thực hiệnSQL-Standard Chức năng cách đọc kèo bóng đá được liệt kê trongBảng 9.11.

Bảng 9.12. Các chức năng cách đọc kèo bóng đá khác

cách đọc kèo bóng đá

Mô tả

Ví dụ

bit_count(byte bytea) →Bigint

Trả về số lượng bit được đặt trong cách đọc kèo bóng đá (còn được gọi làPopCount).

bit_count ('\ x1234567890' :: bytea)15

get_bit(byte 24635_24642, n Bigint) →Số nguyên

Trích xuấtn'thbit từ cách đọc kèo bóng đá.

get_bit ('\ x1234567890' :: bytea, 30)1

get_byte(byte bytea, n Số nguyên) →Số nguyên

Trích xuấtn'thbyte từ cách đọc kèo bóng đá.

get_byte ('\ x1234567890' :: bytea, 4)144

LEGN(bytea) →Số nguyên

Trả về số byte trong cách đọc kèo bóng đá.

length ('\ x1234567890' :: bytea)5

length(byte bytea, mã hóa tên) →Số nguyên

Trả về số lượng ký tự trong cách đọc kèo bóng đá, giả sử đó là văn bản trong đã chomã hóa.

length ('jose' :: bytea, 'utf8')4

MD5(bytea) →Text

Tính cách đọc kèo bóng đá MD5Hashcủa cách đọc kèo bóng đá, với kết quả được viết bằng thập lục phân.

md5 ('th \ 000omas' :: bytea)8AB2D3C9689AAF18 B4958C334C82D8B1

set_bit(byte bytea, n Bigint, NewValue Số nguyên) →bytea

SETSn'thbit trong cách đọc kèo bóng đá đếnNewValue.

set_bit ('\ x1234567890' :: bytea, 30, 0)\ x1234563890

set_byte(byte bytea, n Số nguyên, NewValue Số nguyên) →bytea

SETSn'thbyte trong cách đọc kèo bóng đá thànhNewValue.

set_byte ('\ x1234567890' :: bytea, 4, 64)\ x1234567840

SHA224(bytea) →bytea

Tính cách đọc kèo bóng đá SHA-224Hashcủa cách đọc kèo bóng đá.

SHA224 ('ABC' :: bytea)\ x23097D223405D8228642A477BDA2 55B32AADBCE4BDA0B3F7E36C9DA7

SHA256(bytea) →bytea

Tính cách đọc kèo bóng đá SHA-256Hashcủa cách đọc kèo bóng đá.

SHA256 ('ABC' :: bytea)

SHA384(bytea) →bytea

Tính cách đọc kèo bóng đá SHA-384Hashcủa cách đọc kèo bóng đá.

SHA384 ('ABC' :: bytea)

SHA512(bytea) →bytea

Tính cách đọc kèo bóng đá SHA-512Hashcủa cách đọc kèo bóng đá.

SHA512 ('ABC' :: bytea)\ xDDAF35A193617ABACC417349AE204131 12E6FA4E89A97EA B55D39A 2192992A274FC1A836BA3C23A3FEEBBD 454D4423643CE80E2A9AC94FA54CA49F

Subr(byte bytea, Bắt đầu Số nguyên[, Đếm Số nguyên]) →bytea

trích xuất cách đọc kèo bóng đá con củabyteBắt đầu tạiBắt đầu'th byte và mở rộng choĐếmbyte nếu được chỉ định. (Giống nhưSubring (bytetừBắt đầuchoĐếm).)

Subrtr ('\ x1234567890' :: bytea, 3, 2)\ x5678


cách đọc kèo bóng đáget_byteSET_BYTESố byte đầu tiên của cách đọc kèo bóng đá là byte 0. Hàmget_bitset_bitSố bit từ bên phải trong mỗi byte; Ví dụ: bit 0 là bit ít có ý nghĩa nhất của byte đầu tiên và bit 15 là bit quan trọng nhất của byte thứ hai.

Vì lý do lịch sử, cách đọc kèo bóng đáMD5Trả về giá trị được mã hóa hex của loạiTexttrong khi các hàm SHA-2 trả về loạibytea. Sử dụng các cách đọc kèo bóng đámã hóagiải mãĐể chuyển đổi giữa hai. Ví dụ: Viếtmã hóa (sha256 ('abc'), 'hex')Để có được biểu diễn văn bản được mã hóa hex hoặcDecode (MD5 ('ABC'), 'Hex')để nhậnbyteagiá trị.

Hàm chuyển đổi cách đọc kèo bóng đá giữa các bộ ký tự khác nhau (mã hóa) và để biểu diễn dữ liệu nhị phân tùy ý ở dạng văn bản, được hiển thị trongBảng 9.13. Đối với các cách đọc kèo bóng đá này, một đối số hoặc kết quả của loạiTextđược thể hiện trong mã hóa mặc định của cơ sở dữ liệu, trong khi các đối số hoặc kết quả của loạibyteađang ở trong một mã hóa được đặt tên bởi một đối số khác.

Bảng 9.13. Chức năng chuyển đổi cách đọc kèo bóng đá văn bản/nhị phân

cách đọc kèo bóng đá

Mô tả

Ví dụ (s)

Chuyển đổi(byte bytea, src_encoding tên, Dest_encoding tên) →bytea

Chuyển đổi một cách đọc kèo bóng đá đại diện cho văn bản trong mã hóasrc_encodingđến cách đọc kèo bóng đá trong mã hóaDest_encoding(xemPhần 24.3.4để chuyển đổi có sẵn).

chuyển đổi ('text_in_utf8', 'utf8', 'latin1')\ x746578745F696E5F75746638

Convert_from(byte bytea, src_encoding tên) →Text

Chuyển đổi một cách đọc kèo bóng đá đại diện cho văn bản trong mã hóasrc_encodingđếnTextTrong mã hóa cơ sở dữ liệu (xemPhần 24.3.4để chuyển đổi có sẵn).

Convert_from ('Text_in_utf8', 'UTF8')text_in_utf8

Convert_TO(cách đọc kèo bóng đá Text, Dest_encoding tên) →bytea

Chuyển đổi ATextChuỗi (trong mã hóa cơ sở dữ liệu) thành một cách đọc kèo bóng đá được mã hóa trong mã hóaDest_encoding(xemPhần 24.3.4để chuyển đổi có sẵn).

Convert_TO ('SOME_TEXT', 'UTF8')\ x736f6d655f74657874

mã hóa(byte bytea, Định dạng Text) →Text

Mã hóa dữ liệu nhị cách đọc kèo bóng đá thành một biểu diễn văn bản; được hỗ trợĐịnh dạngGiá trị là:base64, Escape, Hex.

mã hóa ('123 \ 000 \ 001', 'base64')mtizaae =

giải mã(cách đọc kèo bóng đá Text, Định dạng Text) →bytea

Giải mã dữ liệu nhị cách đọc kèo bóng đá từ biểu diễn văn bản; được hỗ trợĐịnh dạngGiá trị giống như đối vớimã hóa.

Decode ('mtizaae =', 'base64')\ x3132330001


Themã hóagiải mãCác cách đọc kèo bóng đá hỗ trợ các định dạng văn bản sau:

base64 #

Thebase64Định dạng là củaRFC 2045 Phần 6.8. TheoRFC, Các dòng được mã hóa bị phá vỡ ở 76 ký tự. Tuy nhiên, thay vì điểm đánh dấu cuối dòng MIME CRLF, chỉ có một dòng mới được sử dụng cho cuối dòng.giải mãHàm bỏ qua các ký tự chuyển đổi, Newline, Space và Tab. Nếu không, một lỗi được nêu ra khigiải mãđược cung cấp dữ liệu cơ sở không hợp lệ64 - bao gồm khi đệm theo dõi không chính xác.

Escape #

TheEscapeĐịnh dạng chuyển đổi số byte và byte với bit cao được đặt thành cách đọc kèo bóng đá thoát hiểm (\nnn), và nó tăng gấp đôi dấu gạch chéo ngược. Các giá trị byte khác được thể hiện theo nghĩa đen.giải mãHàm sẽ gây ra lỗi nếu dấu gạch chéo ngược không được theo sau bởi dấu gạch chéo ngược thứ hai hoặc ba chữ số bát cách đọc kèo bóng đá; nó chấp nhận các giá trị byte khác không thay đổi.

Hex #

TheHexĐịnh dạng đại diện cho mỗi 4 bit dữ liệu dưới dạng một chữ số thập lục cách đọc kèo bóng đá,0đếnf, viết chữ số bậc cao của mỗi byte trước. Themã hóacách đọc kèo bóng đá xuất raA-fCác chữ số hex trong chữ thường. Bởi vì đơn vị dữ liệu nhỏ nhất là 8 bit, luôn có số lượng ký tự chẵn được trả về bởimã hóa. Thegiải mãHàm chấp nhậnA-fCác ký tự trong trường hợp trên hoặc chữ thường. Một lỗi được nêu ra khigiải mãđược cung cấp dữ liệu hex không hợp lệ - bao gồm khi được cho một số ký tự lẻ.

Xem thêm hàm tổng hợpString_agginPhần 9,21và các hàm đối tượng lớn trongPhần 35.4.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài liệu.