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
Tài kèo bóng đá hom nay 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 chohiện tạiPhiên bản hoặc một trong kèo bóng đá hom nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

F.34. seg

Mô -đun này thực hiện kiểu dữ kèo bóng đá hom naySEGđể biểu diễn kèo bóng đá hom nay phân đoạn dòng hoặc khoảng thời gian nổi.SEGcó thể thể hiện sự không chắc chắn trong kèo bóng đá hom nay điểm cuối khoảng thời gian, làm cho nó đặc biệt hữu ích để thể hiện kèo bóng đá hom nay phép đo trong phòng thí nghiệm.

F.34.1. Đặt vấn đề

Hình học của kèo bóng đá hom nay phép đo thường phức tạp hơn so với điểm trong một liên tục số. Một phép đo thường là một phân đoạn của sự liên tục đó với kèo bóng đá hom nay giới hạn hơi mờ. kèo bóng đá hom nay phép đo xuất hiện dưới dạng khoảng vì độ không đảm bảo và tính ngẫu nhiên, cũng như vì giá trị được đo có thể tự nhiên là một khoảng thời gian cho thấy một số điều kiện, chẳng hạn như phạm vi nhiệt độ của sự ổn định của protein.

Sử dụng thông thường, có vẻ thuận tiện hơn để lưu trữ dữ liệu như kèo bóng đá hom nay khoảng, thay vì kèo bóng đá hom nay cặp số. Trong thực tế, nó thậm chí còn hóa ra hiệu quả hơn trong hầu hết kèo bóng đá hom nay ứng dụng.

Xa hơn dọc theo dòng thông thường, độ mờ của kèo bóng đá hom nay giới hạn cho thấy rằng việc sử dụng kèo bóng đá hom nay loại dữ liệu số truyền thống dẫn đến mất thông tin nhất định. Hãy xem xét điều này: Công cụ của bạn đọc 6.50 và bạn nhập bài đọc này vào cơ sở dữ liệu. Bạn nhận được gì khi lấy nó? Đồng hồ:

test = Chọn 6.50 :: float8 là "pH";
 PH
---
6.5
(1 hàng)

11415_11833

Kết luận? Thật tuyệt khi có một loại dữ liệu đặc biệt có thể ghi lại kèo bóng đá hom nay giới hạn của một khoảng thời gian với độ chính xác biến đổi tùy ý. Biến theo nghĩa là mỗi phần tử dữ liệu ghi lại độ chính xác của chính nó.

Kiểm tra điều này:

test = Chọn '6.25 .. 6,50' :: Seg là "pH";
          PH
------------
6.25 .. 6,50
(1 hàng)

F.34.2. Cú pháp

Biểu diễn bên ngoài kèo bóng đá hom nay một khoảng được hình thành bằng cách sử dụng một hoặc hai số điểm nổi được nối bởi toán tử phạm vi (..hoặc...). Ngoài ra, nó có thể được chỉ định là một điểm trung tâm cộng với hoặc trừ đi độ lệch. kèo bóng đá hom nay chỉ số chắc chắn tùy chọn (<, hoặc~) cũng có thể được lưu trữ. (Tuy nhiên, kèo bóng đá hom nay chỉ số chắc chắn bị bỏ qua bởi tất cả kèo bóng đá hom nay toán tử tích hợp.)Bảng F.26đưa ra một cái nhìn tổng quan về kèo bóng đá hom nay biểu diễn được phép;Bảng F.27Hiển thị một số ví dụ.

inBảng F.26, x, y13498_13505biểu thị số điểm nổi.xY, nhưng khôngDelta, có thể được đi trước bởi một chỉ báo chắc chắn.

Bảng F.26.SEGBiểu diễn bên ngoài

x Giá trị đơn (khoảng không độ dài)
x..Y Khoảng từxđếny
x(+-)Delta Khoảng từx - Deltađếnx+Delta
x.. 15166_15199x
..x Khoảng mở với giới hạn trênx

Bảng F.27. Ví dụ về hợp lệSEGInput

5.0 Tạo một phân đoạn độ dài không (một điểm, nếu bạn muốn)
~ 5.0 Tạo một phân đoạn và bản ghi độ dài bằng không~Trong dữ kèo bóng đá hom nay.~bị bỏ qua bởiSEGHoạt động, nhưng được bảo tồn dưới dạng bình luận.
<5.0 Tạo một điểm ở 5.0.<bị bỏ qua nhưng được bảo tồn dưới dạng bình luận.
5.0 Tạo một điểm ở 5.0.bị bỏ qua nhưng được bảo tồn dưới dạng bình luận.
5 (+-) 0,3 Tạo một khoảng4.7 .. 5.3. Lưu ý rằng(+-)Ký hiệu không được bảo quản.
50 .. Mọi thứ lớn hơn hoặc bằng 50
.. 0 Mọi thứ đều nhỏ hơn hoặc bằng 0
1.5E-2 .. 2E-2 Tạo khoảng thời gian0.015 .. 0.02
1 ... 2 17745_177591...2hoặc1 .. 2hoặc1..2(khoảng trống xung quanh toán tử phạm vi bị bỏ qua)

...Nhà điều hành được sử dụng rộng rãi trong kèo bóng đá hom nay nguồn dữ liệu, nó được cho phép như một cách viết thay thế của..Nhà điều hành. Thật không may, điều này tạo ra sự mơ hồ phân tích cú pháp: Không rõ kèo bóng đá hom nay giới hạn trên trong0...23có nghĩa là23hoặc0.23. Điều này được giải quyết bằng cách yêu cầu ít nhất một chữ số trước điểm thập phân trong tất cả kèo bóng đá hom nay số trongSEGĐầu vào.

như một kiểm tra tỉnh táo,SEGTừ chối kèo bóng đá hom nay khoảng thời gian với giới hạn dưới lớn hơn phần trên, ví dụ5 .. 2.

F.34.3. Độ chính xác

SEGGiá trị được lưu trữ bên trong dưới dạng kèo bóng đá hom nay cặp số điểm nổi 32 bit. Điều này có nghĩa là kèo bóng đá hom nay số có hơn 7 chữ số quan trọng sẽ bị cắt.

19126_19490

F.34.4. Cách sử dụng

TheSEGMô -đun bao gồm lớp toán tử chỉ mục GIST choSEGGiá trị. kèo bóng đá hom nay toán tử được hỗ trợ bởi lớp toán tử GIST được hiển thị trongBảng F.28.

Bảng F.28. kèo bóng đá hom nay toán tử seg gist

Nhà điều hành Mô tả
[A, B] << [C, D] [A, B] hoàn toàn ở bên trái kèo bóng đá hom nay [C, D]. Nghĩa là, [a, b] << [c, d] là đúng nếu b <c và sai nếu không.
[A, B] [C, D] [A, B] hoàn toàn ở bên phải kèo bóng đá hom nay [C, D]. Nghĩa là, [a, b] [c, d] là đúng nếu a d và sai.
[a, b] & <[c, d] chồng chéo hoặc còn lại kèo bóng đá hom nay - điều này có thể được đọc tốt hơn làHồikhông mở rộng sang phảiHàng. Nó đúng khi b <= d.
[A, B] & [C, D] chồng chéo hoặc đúng kèo bóng đá hom nay - điều này có thể được đọc tốt hơn làKhông mở rộng sang trái kèo bóng đá hom nayHàng. Nó đúng khi a = c.
[a, b] = [c, d] Giống như - kèo bóng đá hom nay phân đoạn [a, b] và [c, d] giống hệt nhau, nghĩa là, a = c và b = d.
[A, B] && [C, D] kèo bóng đá hom nay phân đoạn [a, b] và [c, d] chồng chéo.
22024_22045 Phân đoạn [a, b] chứa phân đoạn [c, d], nghĩa là a <= c và b = d.
[A, B] <@ [C, D] Phân đoạn [a, b] được chứa trong [c, d], nghĩa là a = c và b <= d.

(trước PostgreSql 8.2, toán tử ngăn chặn@<@được gọi tương ứng@~. Những cái tên này vẫn có sẵn, nhưng không được dùng và cuối cùng sẽ được nghỉ hưu. Lưu ý rằng kèo bóng đá hom nay tên cũ được đảo ngược từ Công ước trước đây là kèo bóng đá hom nay loại dữ liệu hình học cốt lõi!)

kèo bóng đá hom nay toán tử B-cây tiêu chuẩn cũng được cung cấp, ví dụ

Nhà điều hành Mô tả
[a, b] <[c, d] ít hơn
[A, B] [C, D] lớn hơn

Những nhà khai thác này không có nhiều ý nghĩa cho bất kỳ mục đích thực tế nào mà là sắp xếp. kèo bóng đá hom nay toán tử này trước tiên so sánh (a) với (c) và nếu chúng bằng nhau, so sánh (b) với (d). Điều đó dẫn đến việc sắp xếp hợp lý tốt trong hầu hết kèo bóng đá hom nay trường hợp, điều này rất hữu ích nếu bạn muốn sử dụng thứ tự bằng loại này.

F.34.5. Ghi chú

Để biết ví dụ về việc sử dụng, hãy xem bài kiểm tra hồi quySQL/SEG.SQL.

Cơ chế chuyển đổi(+-)kèo bóng đá hom nay phạm vi thông thường không hoàn toàn chính xác trong việc xác định số lượng chữ số quan trọng cho kèo bóng đá hom nay ranh giới. Ví dụ: nó thêm một chữ số bổ sung vào ranh giới dưới nếu khoảng thời gian kết quả bao gồm sức mạnh của mười:

postgres = select '10 (+-) 1 ':: seg as seg;
      Seg
---------
9.0 .. 11 - Nên là: 9 .. 11

24604_24752SEGCột; Xem tập lệnhSắp xếp-Segments.plVí dụ.

F.34.6. Tín dụng

Tác giả gốc: Gene Selkov, Jr., Phòng Toán học và Khoa học Máy tính, Phòng thí nghiệm quốc gia Argonne.

Lời cảm ơn kèo bóng đá hom nay tôi chủ yếu dành cho Giáo sư Joe Hellerstein (https: //dsf.berkeley.edu/jmh/) để làm sáng tỏ ý chính kèo bóng đá hom nay ý chính (http: //gist.cs.berkeley.edu/). Tôi cũng biết ơn tất cả kèo bóng đá hom nay nhà phát triển Postgres, hiện tại và quá khứ, vì đã cho phép bản thân tạo ra thế giới của riêng tôi và sống không bị xáo trộn trong đó. Và tôi muốn thừa nhận lòng biết ơn của mình đến Argonne Lab và Bộ Năng lượng Hoa Kỳ cho những năm hỗ trợ trung thành với nghiên cứu cơ sở dữ liệu của tôi.