Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang cho토토 꽁 머니 43_19Phiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

F.13. 스포츠 토토 사이트

Mô -đun này thực hiện스포츠 토토 사이트Dữ liệu Nhập để lưu trữ các bộ của các cặp khóa/giá trị trong mộtPostgreSQLGiá trị. Điều này có thể được hữu ích trong các kịch bản khác nhau, chẳng hạn như các hàng có nhiều thuộc tính điều đó hiếm khi được kiểm tra, hoặc dữ liệu bán cấu trúc. Chìa khóa và giá trị chỉ đơn giản là chuỗi văn bản.

F.13.1.스포츠 토토 사이트Đại diện bên ngoài

Biểu diễn văn bản của스포츠 토토 사이트, Được sử dụng cho đầu vào và đầu ra, bao gồm không hoặc nhiều hơnKey = giá trịcặp được phân tách bởi dấu phẩy. Một số ví dụ:

K = V.
foo = thanh, baz = bất cứ điều gì
"1-a" = "bất cứ điều gì ở tất cả"

Thứ tự của các cặp không đáng kể (và có thể không tái tạo trên đầu ra). Khoảng trắng giữa các cặp hoặc xung quanh=Dấu hiệu bị bỏ qua. Kép Các khóa và giá trị bao gồm khoảng trắng, dấu phẩy,=S hoặcs. Để bao gồm báo giá kép hoặc dấu gạch chéo ngược trong một khóa hoặc giá trị, thoát khỏi nó với một dấu gạch chéo ngược.

mỗi khóa trong một스포츠 토토 사이트là duy nhất. Nếu như bạn khai báo스포츠 토토 사이트với trùng lặp Khóa, chỉ có một cái sẽ được lưu trữ trong스포츠 토토 사이트Và không có gì đảm bảo về ý chí nào được giữ:

Chọn 'A = 1, a = 2' :: 스포츠 토토 사이트;
  hstore
----------
 "A" = "1"

Một giá trị (nhưng không phải là khóa) có thể là SQLnull. Ví dụ:

key = null

ThenullTừ khóa là trường hợp không nhạy cảm. Hai phần trích dẫnnullĐể coi nó là chuỗi thông thường"null".

Lưu ý:Hãy nhớ rằng스포츠 토토 사이트Định dạng văn bản, khi được sử dụng cho đầu vào, Áp dụngtrướcBất kỳ trích dẫn hoặc thoát yêu cầu nào. Nếu bạn đang vượt qua스포츠 토토 사이트theo nghĩa đen thông qua một tham số, sau đó Không cần xử lý bổ sung. Nhưng nếu bạn đang đi qua nó như một hằng số theo nghĩa đen được trích dẫn, sau đó bất kỳ phương tiện nào ký tự và (tùy thuộc vào cài đặt củaStandard_Conforming_StringsCấu hình tham số) các ký tự dấu gạch chéo ngược cần được thoát chính xác. Nhìn thấyPhần 4.1.2.1Để biết thêm về việc xử lý chuỗi hằng số.

trên đầu ra, báo giá đôi luôn bao quanh các phím và giá trị, ngay cả khi nó không hoàn toàn cần thiết.

F.13.2.스포츠 토토 사이트toán tử và chức năng

Bảng F-6.스포츠 토토 사이트toán tử

Nhà điều hành Mô tả Ví dụ result
스포츠 토토 사이트 - Text Nhận giá trị cho khóa (nullNếu không có mặt) 'a = x, b = y' :: 스포츠 토토 사이트 - 'A' x
스포츠 토토 사이트 - Text [] Nhận giá trị cho các khóa (nullNếu không có) 'a = x, b = y, c = z ':: 스포츠 토토 사이트 - mảng [' c ',' a '] "z", "x"
Text = Text làm cho một cặp스포츠 토토 사이트 'A' = 'B' "A" = "B"
스포츠 토토 사이트 || 스포츠 토토 사이트 Concatenate스포츠 토토 사이트S 'a = b, c = d' :: hstore || 'c = x, d = q' :: hstore "A" = "B", "C" = "X", "D" = "Q"
스포츠 토토 사이트 ? Text không스포츠 토토 사이트chứa khóa? 'A = 1' :: 스포츠 토토 사이트? 'Một' T
스포츠 토토 사이트 ? & Text [] không스포츠 토토 사이트chứa tất cả Khóa được chỉ định? 'a = 1, b = 2' :: 스포츠 토토 사이트 ? & Mảng ['a', 'b'] T
스포츠 토토 사이트 ? | Text [] không스포츠 토토 사이트chứa bất kỳ các khóa được chỉ định? 'a = 1, b = 2' :: 스포츠 토토 사이트? | Mảng ['b', 'c'] T
스포츠 토토 사이트 @ 스포츠 토토 사이트 Vận hành bên trái có chứa phải không? 'a = b, b = 1, c = null ':: hstore @' b = 1 ' T
스포츠 토토 사이트 <@ 스포츠 토토 사이트 là toán hạng bên trái có ở bên phải? 'A = C' :: 스포츠 토토 사이트 <@ 'a = b, b = 1, c = null' f
스포츠 토토 사이트 - Text Xóa phím từ toán hạng bên trái 'a = 1, b = 2, c = 3 ':: 스포츠 토토 사이트 -' b ':: text "A" = "1", "C" = "3"
스포츠 토토 사이트 - Text [] Xóa các phím từ toán hạng bên trái 'a = 1, b = 2, c = 3 ':: 스포츠 토토 사이트 - mảng [' a ',' b '] "C" = "3"
스포츠 토토 사이트 - 스포츠 토토 사이트 Xóa các cặp khớp từ toán hạng bên trái 'A = 1, b = 2, C = 3 ':: 스포츠 토토 사이트 -' a = 4, b = 2 ':: hstore "A" = "1", "C" = "3"
Record #= 스포츠 토토 사이트 Thay thế các trường trongRecordvới Kết hợp các giá trị từ스포츠 토토 사이트 Xem ví dụ Phần
%% 스포츠 토토 사이트 chuyển đổi스포츠 토토 사이트đến mảng của Khóa và giá trị xen kẽ %% 'a = foo, B = Bar ':: 스포츠 토토 사이트 a, foo, b, bar
%# 스포츠 토토 사이트 Chuyển đổi스포츠 토토 사이트đến Mảng khóa/giá trị hai chiều %# 'a = foo, B = Bar ':: 스포츠 토토 사이트 a, foo, b, bar

Lưu ý:Trước PostgreSQL 8.2, ngăn chặn người vận hành@<@được gọi là@~, tương ứng. Những cái tên này vẫn có sẵn, nhưng không được chấp nhận và cuối cùng sẽ được gỡ bỏ. Lưu ý rằng các tên cũ bị đảo ngược từ quy ước trước đây là dữ liệu hình học cốt lõi các loại!

Lưu ý:The=Nhà điều hành được không dùng nữa và có thể được gỡ bỏ trong một bản phát hành trong tương lai. Sử dụng The스포츠 토토 사이트 (văn bản, văn bản)Hàm thay vì.

Bảng F-7.스포츠 토토 사이트Chức năng

chức năng Loại trả lại Mô tả Ví dụ Kết quả
스포츠 토토 사이트 (ghi) 스포츠 토토 사이트 Xây dựng một스포츠 토토 사이트từ a Ghi lại hoặc hàng 스포츠 토토 사이트 (hàng (1,2)) f1 = 1, f2 = 2
스포츠 토토 사이트 (văn bản []) 스포츠 토토 사이트 Xây dựng một스포츠 토토 사이트Từ một mảng, có thể là một mảng khóa/giá trị hoặc một Mảng hai chiều 스포츠 토토 사이트 (mảng ['A', '1', 'B', '2'])) || hstore (mảng [['c', '3'], ['d', '4']])) a = 1, b = 2, c = 3, d = 4
스포츠 토토 사이트 (văn bản [], chữ[]) 스포츠 토토 사이트 Xây dựng스포츠 토토 사이트Từ Mảng khóa và giá trị riêng biệt 스포츠 토토 사이트 (mảng ['A', 'B'], Mảng ['1', '2']) "A" = "1", "B" = "2"
스포츠 토토 사이트 (văn bản, chữ) 스포츠 토토 사이트 Làm đơn lẻ스포츠 토토 사이트 스포츠 토토 사이트 ('A', 'B') "A" = "B"
akey (스포츠 토토 사이트) Text [] Nhận스포츠 토토 사이트'của mảng AKEYS ('A = 1, B = 2') A, B
SKEYS (스포츠 토토 사이트) Setof Text GET스포츠 토토 사이트's Keys As a bộ SKEYS ('A = 1, B = 2')
a
B
Avals (스포츠 토토 사이트) Text [] GET스포츠 토토 사이트22756_22791 Avals ('a = 1, b = 2') 1,2
svals (스포츠 토토 사이트) Text Setof get스포츠 토토 사이트s giá trị như một bộ svals ('a = 1, b = 2')
1
2
스포츠 토토 사이트_to_array (스포츠 토토 사이트) Text [] Nhận스포츠 토토 사이트Các phím và giá trị Là một mảng các khóa và giá trị xen kẽ 스포츠 토토 사이트_to_array ('a = 1, b = 2') a, 1, b, 2
스포츠 토토 사이트_to_matrix (스포츠 토토 사이트) Text [] GET스포츠 토토 사이트Các phím và giá trị của Là một mảng hai chiều 스포츠 토토 사이트_to_matrix ('a = 1, b = 2') a, 1, b, 2
Slice (스포츠 토토 사이트, chữ[]) 스포츠 토토 사이트 Trích xuất một tập hợp con스포츠 토토 사이트 Slice ('a = 1, b = 2, c = 3' :: 스포츠 토토 사이트, Mảng ['b', 'c', 'x']) "B" = "2", "C" = "3"
mỗi (스포츠 토토 사이트) setof (văn bản chính, giá trị chữ) GET스포츠 토토 사이트Các phím và giá trị của như một tập hợp Chọn * Từ Mỗi ('a = 1, b = 2')
khóa | giá trị
-----+-------
 A | 1
 B | 2
tồn tại (스포츠 토토 사이트, văn bản) Boolean không스포츠 토토 사이트chứa khóa? tồn tại ('a = 1', 'a') T
được xác định (스포츠 토토 사이트, văn bản) Boolean không스포츠 토토 사이트chứa khôngnullGiá trị cho khóa? Xác định ('a = null', 'a') f
Xóa (스포츠 토토 사이트, Text) 스포츠 토토 사이트 Xóa cặp với phím khớp Xóa ('A = 1, B = 2', 'B') "A" = "1"
Xóa (스포츠 토토 사이트, văn bản []) 스포츠 토토 사이트 Xóa các cặp với các phím phù hợp Xóa ('a = 1, b = 2, c = 3', mảng ['a', 'b']) "C" = "3"
Xóa (스포츠 토토 사이트, 스포츠 토토 사이트) 스포츠 토토 사이트 Xóa các cặp phù hợp với các cặp trong lần thứ hai lý lẽ Xóa ('a = 1, b = 2', 'a = 4, b = 2' :: 스포츠 토토 사이트) "A" = "1"
Population_Record (Record, 스포츠 토토 사이트) Record Thay thế các trường trongRecordvới Kết hợp các giá trị từ스포츠 토토 사이트 Xem phần ví dụ

Lưu ý:hàmPopulation_Recordthực sự được khai báo vớiAnyEuity, khôngRecord, như đối số đầu tiên của nó, nhưng nó sẽ từ chối các loại không ghi với lỗi thời gian chạy.

F.13.3. Chỉ mục

스포츠 토토 사이트Hỗ trợ Chỉ số Gist và Gin cho@, ?, ? &? |Người vận hành. Ví dụ:

Tạo chỉ mục HIDX trên Test스포츠 토토 사이트 bằng Gist (h);

Tạo chỉ mục HIDX trên Test스포츠 토토 사이트 bằng Gin (H);

스포츠 토토 사이트cũng hỗ trợBtreehoặcHashChỉ mục cho=toán tử. Điều này cho phép스포츠 토토 사이트cột được khai báođộc đáohoặc được sử dụng trongNhóm bởi, Đặt hàng bởihoặckhác biệtBiểu thức. Loại Đặt hàng cho스포츠 토토 사이트Giá trị thì không đặc biệt hữu ích, nhưng các chỉ mục này có thể hữu ích cho Tra cứu tương đương. Tạo chỉ mục cho=So sánh như sau:

Tạo chỉ mục HIDX trên Testhstore bằng Btree (h);

Tạo chỉ mục HIDX trên Testhstore bằng băm (h);

F.13.4. Ví dụ

Thêm khóa hoặc cập nhật khóa hiện có có giá trị mới:

Tab Cập nhật đặt H = H || ('C' = '3');

Xóa khóa:

Tab Cập nhật đặt h = xóa (h, 'k1');

Chuyển đổi ARecordđến một스포츠 토토 사이트:

Tạo thử nghiệm bảng (số nguyên col1, văn bản col2, văn bản col3);
Chèn vào các giá trị kiểm tra (123, 'foo', 'thanh');

Chọn HStore (T) từ thử nghiệm là T;
                   hstore                    
-------------------------------------------------
 "col1" = "123", "col2" = "foo", "col3" = "bar"
(1 hàng)

Chuyển đổi một스포츠 토토 사이트đến một chiếc được xác định trướcRecordloại:

Tạo thử nghiệm bảng (số nguyên col1, văn bản col2, văn bản col3);

Chọn * Từ population_record (null :: test,
                              '"col1" = "456", "col2" = "zzz"');
 col1 | col2 | col3 
------+------+------
  456 | zzz | 
(1 hàng)

Sửa đổi bản ghi hiện có bằng cách sử dụng các giá trị từ스포츠 토토 사이트:

Tạo kiểm tra bảng (số nguyên col1, văn bản col2, văn bản col3);
Chèn vào các giá trị kiểm tra (123, 'foo', 'thanh');

Chọn (r).* Từ (chọn t #= '"col3" = "Baz"' làm r từ thử nghiệm t) s;
 col1 | col2 | col3 
------+------+------
  123 | foo | Baz
(1 hàng)

F.13.5. Thống kê

The스포츠 토토 사이트Loại, vì nó Tự do nội tại, có thể chứa rất nhiều khóa khác nhau. Kiểm tra các khóa hợp lệ là nhiệm vụ của ứng dụng. Các Các ví dụ sau chứng minh một số kỹ thuật để kiểm tra Chìa khóa và có được số liệu thống kê.

Ví dụ đơn giản:

Chọn * từ mỗi ('aaa = bq, b = null, "" = 1');

Sử dụng bảng:

Chọn (mỗi (h)).

Thống kê trực tuyến:

Chọn khóa, đếm (*) từ
  (Chọn (mỗi (h)). Khóa từ Testhstore) làm chỉ số
  Nhóm theo khóa
  Đặt hàng theo đếm desc, khóa;
    chìa khóa | đếm
-----------+-------
 dòng |   883
 Truy vấn |   207
 pos |   203
 nút |   202
 Không gian |   197
 trạng thái |   195
 công khai |   194
 Tiêu đề |   190
 org |   189
...................

F.13.6. Khả năng tương thích

Khi nâng cấp từ cũ hơn các phiên bản, luôn tải phiên bản mới của mô -đun này vào cơ sở dữ liệu trước khi khôi phục một bãi rác. Nếu không, nhiều tính năng mới sẽ không có sẵn.

Kể từ Postgresql 9.0,스포츠 토토 사이트Sử dụng a Đại diện nội bộ khác nhau so với các phiên bản trước. Cái này Không trình bày không có trở ngại cho việc nâng cấp kết xuất/khôi phục kể từ khi văn bản Biểu diễn (được sử dụng trong bãi rác) không thay đổi.

Trong trường hợp nâng cấp nhị phân, khả năng tương thích hướng lên là được duy trì bằng cách có mã mới nhận ra dữ liệu định dạng cũ. Điều này sẽ đòi hỏi một hình phạt hiệu suất nhỏ khi xử lý Dữ liệu chưa được sửa đổi bởi mã mới. Nó là có thể buộc nâng cấp tất cả các giá trị trong cột bảng bằng cách đang làmCập nhậtCâu lệnh AS theo sau:

CẬP NHẬT TABLENAME SET 스포츠 토토 사이트COL = 스포츠 토토 사이트COL | '';

Một cách khác để làm điều đó là:

33118_33194

TheBảng thay đổiPhương pháp yêu cầu một Khóa độc quyền trên bàn, nhưng không dẫn đến đầy hơi bảng có phiên bản hàng cũ.

F.13.7. Tác giả

Oleg Bartunov,, Moscow, Đại học Moscow, Nga

Teodor Sigaev,, Moscow, Delta-Soft Ltd., Nga

Cải tiến bổ sung của Andrew Gierth,, Vương quốc Anh