Phiên kèo bóng đá việt nam được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên kèo bóng đá việt nam phát triển:18 / Devel
Phiên kèo bóng đá việt nam 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

F.43. Bảngcrosstabvà những người khác)#

TheBảng điều khiểnMô -đun bao gồm kèo bóng đá việt nam chức năng khác nhau mà kèo bóng đá việt nam bảng trả về (nghĩa là nhiều hàng). kèo bóng đá việt nam chức năng này hữu ích cả theo đúng nghĩa của chúng và là ví dụ về cách viết kèo bóng đá việt nam chức năng C trả về nhiều hàng.

Mô -đun này được coi làHồiTrustedxông, nghĩa là, nó có thể được cài đặt bởi những người không phải là người siêu giám sát cóTạoĐặc quyền trên cơ sở dữ liệu hiện tại.

F.43.1. kèo bóng đá việt nam chức năng được cung cấp#

Bảng F.32Tóm tắt kèo bóng đá việt nam chức năng được cung cấp bởibảngMô -đun.

Bảng F.32.bảngChức năng

function

Mô tả

bình thường_rand(numvals Số nguyên, trung bình float8, STDDEV float8) →setof float8

Sản xuất một tập hợp kèo bóng đá việt nam giá trị ngẫu nhiên được phân phối bình thường.

crosstab(SQL Text) →Setof Record

Sản xuất ABảng Pivotchứa tên kèo bóng đá việt nam cộng vớincột giá trị, trong đónđược xác định bởi loại kèo bóng đá việt nam được chỉ định trong truy vấn gọi.

crosstabn(SQL Text) →setof bảng_crosstab_n

Sản xuất ABảng Pivotkèo bóng đá việt namchứa tên kèo bóng đá việt nam cộng vớinCột giá trị.crosstab2, crosstab3crosstab4được xác định trước, nhưng bạn có thể tạo thêmcrosstabnkèo bóng đá việt nam chức năng như được mô tả bên dưới.

crosstab(Source_SQL Text, category_sql Text) →Setof Record

Sản xuất ABảng PivotVới kèo bóng đá việt nam cột giá trị được chỉ định bởi truy vấn thứ hai.

crosstab(SQL Text, n Số nguyên) →Setof Record

Phiên kèo bóng đá việt nam lỗi thời củacrosstab (văn kèo bóng đá việt nam). Tham sốnhiện bị bỏ qua, vì số lượng cột giá trị luôn được xác định bởi truy vấn gọi.

Connectby(relname Text, keyid_fld Text, Parent_Keyid_FLD Text[, OrderBy_FLD Text],start_with Text, MAX_DEPTH Số nguyên[, cành_delim Text]) →Setof Record

Sản xuất biểu diễn cấu trúc cây phân cấp.


F.43.1.1.bình thường_rand #

17185_17262

bình thường_randSản xuất một tập hợp kèo bóng đá việt nam giá trị ngẫu nhiên được phân phối bình thường (phân phối Gaussian).

numvalslà số lượng giá trị được trả về từ hàm.trung bìnhlà giá trị trung bình của phân phối giá trị bình thường vàSTDDEVlà độ lệch chuẩn của phân phối giá trị bình thường.

Ví dụ: cuộc gọi này yêu cầu 1000 giá trị với giá trị trung bình là 5 và độ lệch chuẩn là 3:

test =# Chọn * từ bình thường_rand (1000, 5, 3);
     bình thường_rand
--------------------------
     1.56556322244898
     9.10040991424657
     5.36957140345079
   -0.369151492880995
    0.283600703686639
       .
       .
       .
     4.82992125404908
     9.71308014517282
     2.49639286969028
(1000 kèo bóng đá việt nam)

F.43.1.2.crosstab (văn kèo bóng đá việt nam) #

crosstab (văn kèo bóng đá việt nam SQL)
crosstab (văn kèo bóng đá việt nam SQL, int n)

ThecrosstabHàm được sử dụng để sản xuấtPivotHiển thị, trong đó dữ liệu được liệt kê trên trang thay vì xuống. Ví dụ: chúng ta có thể có dữ liệu như

ROW1 Val11
Hàng1 Val12
Hàng1 Val13
...
ROW2 Val21
ROW2 Val22
ROW2 Val23
...

mà chúng tôi muốn hiển thị như

ROW1 Val11 Val12 Val13 ...
ROW2 Val21 Val22 Val23 ...
...

ThecrosstabHàm lấy tham số văn kèo bóng đá việt nam là truy vấn SQL tạo dữ liệu thô được định dạng theo cách đầu tiên và tạo ra một bảng được định dạng theo cách thứ hai.

TheSQLTham số là một câu lệnh SQL tạo ra bộ dữ liệu nguồn. Câu lệnh này phải trả về mộtROW_NAMECột, mộtDanh mụcCột và mộtgiá trịcột.nlà một tham số lỗi thời, bị bỏ qua nếu được cung cấp (trước đây là điều này phải khớp với số lượng cột giá trị đầu ra, nhưng bây giờ được xác định bởi truy vấn gọi điện).

Ví dụ: truy vấn được cung cấp có thể tạo ra một bộ một thứ như:

Giá trị mèo ROW_NAME
----------+-------+-------
  Hàng1 CAT1 Val1
  Hàng1 CAT2 Val2
  Hàng1 CAT3 Val3
  Hàng1 cat4 val4
  ROW2 CAT1 Val5
  ROW2 CAT2 Val6
  ROW2 CAT3 Val7
  ROW2 cat4 val8

ThecrosstabHàm được tuyên bố trả lạiSETOF Record, Vì vậy, kèo bóng đá việt nam tên và loại thực tế của kèo bóng đá việt nam cột đầu ra phải được xác định trongtừmệnh đề của cuộc gọiChọnCâu lệnh, ví dụ:

20665_20754

Ví dụ này tạo ra một thứ gì đó như:

<== Cột giá trị ==
 ROW_NAME CAGETORY_1 CAGETORY_2
----------+------------+------------
  Hàng1 val1 val2
  Row2 Val5 Val6

Thetừmệnh đề phải xác định đầu ra là mộtROW_NAMECột (cùng loại dữ liệu với cột kết quả đầu tiên của truy vấn SQL) theo sau là ngiá trịCột (tất cả kèo bóng đá việt nam loại dữ liệu giống như cột kết quả thứ ba của truy vấn SQL). Bạn có thể thiết lập nhiều cột giá trị đầu ra như bạn muốn. Tên của kèo bóng đá việt nam cột đầu ra tùy thuộc vào bạn.

ThecrosstabHàm tạo ra một kèo bóng đá việt nam đầu ra cho mỗi nhóm kèo bóng đá việt nam đầu vào liên tiếp có cùngROW_NAMEGiá trị. Nó điền vào đầu ragiá trịcột, từ trái sang phải, vớigiá trịkèo bóng đá việt nam trường từ kèo bóng đá việt nam hàng này. Nếu có ít hàng hơn trong một nhóm hơn là có đầu ragiá trịkèo bóng đá việt nam cột, kèo bóng đá việt nam cột đầu ra bổ sung được lấp đầy bằng null; Nếu có nhiều hàng hơn, kèo bóng đá việt nam hàng đầu vào bổ sung sẽ bị bỏ qua.

Trong thực tế, truy vấn SQL phải luôn chỉ địnhĐặt kèo bóng đá việt nam bằng 1,2Để đảm bảo rằng kèo bóng đá việt nam hàng đầu vào được đặt hàng đúng cách, nghĩa là kèo bóng đá việt nam giá trị có cùngROW_NAMEđược kết hợp với nhau và đặt kèo bóng đá việt nam chính xác trong kèo bóng đá việt nam. Lưu ý rằngcrosstabBản thân nó không chú ý đến cột thứ hai của kết quả truy vấn; Nó chỉ ở đó để được đặt hàng bởi, để kiểm soát thứ tự trong đó kèo bóng đá việt nam giá trị cột thứ ba xuất hiện trên trang.

Đây là một ví dụ hoàn chỉnh:

Tạo bảng CT (id nối tiếp, văn bản rowid, văn bản thuộc tính, văn bản giá trị);
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test1', 'ATT1', 'Val1');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test1', 'Att2', 'Val2');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test1', 'Att3', 'Val3');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test1', 'Att4', 'Val4');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test2', 'ATT1', 'Val5');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test2', 'Att2', 'Val6');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test2', 'Att3', 'Val7');
Chèn vào kèo bóng đá việt nam giá trị CT (ROWID, Thuộc tính, Giá trị) ('Test2', 'Att4', 'Val8');

LỰA CHỌN *
Từ crosstab (
  'Chọn RowID, Thuộc tính, Giá trị
   từ CT
   trong đó thuộc tính = '' att2 '' hoặc thuộc tính = '' att3 ''
   đặt hàng theo 1,2 ')
Dưới dạng CT (ROW_NAME TEXT, CATELORY_1 TEXT, CATTORY_2 TEXT, CATETORY_3 TEXT);

 ROW_NAME | loại_1 | loại_2 | loại_3
----------+------------+------------+------------
 test1 | val2 | val3 |
 test2 | val6 | val7 |
(2 hàng)

Bạn có thể tránh luôn phải viết ratừmệnh đề để xác định kèo bóng đá việt nam cột đầu ra, bằng cách thiết lập chức năng crosstab tùy chỉnh có loại hàng đầu ra mong muốn có dây vào định nghĩa của nó. Điều này được mô tả trong phần tiếp theo. Một khả năng khác là nhúng yêu cầutừmệnh đề trong định nghĩa xem.

Lưu ý

Xem thêm\ crosstabviewlệnh trongPSQL, cung cấp chức năng tương tựcrosstab ().

F.43.1.3.crosstabn(văn kèo bóng đá việt nam) #

crosstabn(văn kèo bóng đá việt nam SQL)

Thecrosstabnkèo bóng đá việt nam chức năng là ví dụ về cách thiết lập trình bao bọc tùy chỉnh cho chungcrosstabHàm, để bạn không cần ghi tên và loại cột trong cuộc gọiChọnTruy vấn. TheTableFuncMô -đun bao gồmcrosstab2, crosstab3crosstab4, có loại kèo bóng đá việt nam đầu ra được xác định là

Tạo loại TableFunc_Crosstab_N AS (
    Row_name văn kèo bóng đá việt nam,
    Category_1 văn kèo bóng đá việt nam,
    Category_2 văn kèo bóng đá việt nam,
        .
        .
        .
    thể loại_n văn kèo bóng đá việt nam
);

Do đó, kèo bóng đá việt nam chức năng này có thể được sử dụng trực tiếp khi truy vấn đầu vào tạo raROW_NAMEgiá trịcột loạiText, và bạn muốn kèo bóng đá việt nam cột giá trị đầu ra 2, 3 hoặc 4. Theo tất cả kèo bóng đá việt nam cách khác, họ cư xử chính xác như được mô tả ở trên cho chungcrosstabchức năng.

Ví dụ, ví dụ được đưa ra trong phần trước cũng sẽ hoạt động như

Chọn *
Từ crosstab3 (
  'Chọn RowID, Thuộc tính, Giá trị
   từ CT
   trong đó thuộc tính = '' att2 '' hoặc thuộc tính = '' att3 ''
   đặt kèo bóng đá việt nam theo 1,2 ');

kèo bóng đá việt nam chức năng này được cung cấp chủ yếu cho mục đích minh họa. Bạn có thể tạo kèo bóng đá việt nam loại và chức năng trả về của riêng bạn dựa trên cơ bảncrosstab ()Hàm. Có hai cách để làm điều đó:

  • Tạo một loại tổng hợp mô tả kèo bóng đá việt nam cột đầu ra mong muốn, tương tự như kèo bóng đá việt nam ví dụ trong26877_26915. Sau đó xác định tên chức năng duy nhất chấp nhận mộtTexttham số và trả vềsetof your_type_name, nhưng liên kết với cùng một cơ kèo bóng đá việt namcrosstabc Hàm. Ví dụ: nếu dữ liệu nguồn của bạn tạo tên kèo bóng đá việt nam làTextvà kèo bóng đá việt nam giá trị làfloat8và bạn muốn 5 cột giá trị:

    Tạo loại my_crosstab_float8_5_cols là (
        văn kèo bóng đá việt nam my_row_name,
        my_c Category_1 float8,
        my_c Category_2 float8,
        my_c Category_3 float8,
        my_c Category_4 float8,
        my_carget_5 float8
    );
    
    Tạo hoặc thay thế hàm crosstab_float8_5_cols (văn kèo bóng đá việt nam)
        Trả về setof my_crosstab_float8_5_cols
        Như '$ libdir/pablefunc', 'crosstab' ngôn ngữ c ổn định;
  • Sử dụngouttham số để xác định loại trả về ngầm. Ví dụ tương tự cũng có thể được thực hiện theo cách này:

    Tạo hoặc thay thế hàm crosstab_float8_5_cols (
        Trong văn kèo bóng đá việt nam,
        OUT MY_ROW_NAME TEXT,
        OUT My_c Category_1 Float8,
        OUT My_c Category_2 Float8,
        OUT My_C Category_3 Float8,
        OUT My_c Category_4 float8,
        Ra my_carget_5 float8)
      Trả về kèo bóng đá việt nam ghi Setof
      Như '$ libdir/pablefunc', 'crosstab' ngôn ngữ c ổn định;

F.43.1.4.crosstab (văn kèo bóng đá việt nam, văn kèo bóng đá việt nam) #

28820_28868

Giới hạn chính của dạng tham số đơn củacrosstablà nó xử lý tất cả kèo bóng đá việt nam giá trị trong một nhóm giống nhau, chèn mỗi giá trị vào cột có sẵn đầu tiên. Nếu bạn muốn kèo bóng đá việt nam cột giá trị tương ứng với kèo bóng đá việt nam loại dữ liệu cụ thể và một số nhóm có thể không có dữ liệu cho một số danh mục, điều đó không hoạt động tốt. Dạng hai tham số củacrosstabXử lý trường hợp này bằng cách cung cấp một danh sách rõ ràng kèo bóng đá việt nam danh mục tương ứng với kèo bóng đá việt nam cột đầu ra.

Source_SQLlà một câu lệnh SQL tạo ra bộ dữ liệu nguồn. Câu lệnh này phải trả về mộtROW_NAMECột, mộtthể loạiCột và mộtValueCột. Nó cũng có thể có một hoặc nhiềuExtraKhănCột. TheROW_NAMECột phải là đầu tiên. Thethể loạigiá trịkèo bóng đá việt nam cột phải là hai cột cuối cùng, theo thứ tự đó. Bất kỳ cột nào giữaROW_NAMEthể loạiđược coi làExtra. TheExtraHồikèo bóng đá việt nam cột dự kiến ​​sẽ giống nhau cho tất cả kèo bóng đá việt nam hàng có cùngROW_NAMEGiá trị.

Ví dụ,Source_SQLcó thể tạo ra một bộ một thứ như:

Chọn hàng_name, Extra_col, Cat, giá trị từ thứ tự foo bằng 1;

 Row_name Extra_col Cat Value
----------+------------+-----+---------
  ROW1 Extra1 Cat1 Val1
  ROW1 Extra1 Cat2 Val2
  ROW1 Extra1 Cat4 Val4
  Row2 Extra2 Cat1 Val5
  Row2 Extra2 Cat2 Val6
  Row2 Extra2 Cat3 Val7
  Row2 Extra2 Cat4 Val8

category_sqllà một câu lệnh SQL tạo ra tập hợp kèo bóng đá việt nam danh mục. Câu lệnh này phải trả về chỉ một cột. Nó phải tạo ra ít nhất một hàng, hoặc một lỗi sẽ được tạo ra. Ngoài ra, nó không được tạo ra kèo bóng đá việt nam giá trị trùng lặp hoặc một lỗi sẽ được tạo ra.category_sqlcó thể là một cái gì đó như:

Chọn con mèo khác biệt với thứ tự foo bằng 1;
    con mèo
  -------
    CAT1
    CAT2
    CAT3
    Cat4

​​ThecrosstabHàm được tuyên bố trả lạiSETOF Record, Vì vậy, kèo bóng đá việt nam tên và loại thực tế của kèo bóng đá việt nam cột đầu ra phải được xác định trongtừmệnh đề của cuộc gọiChọnCâu lệnh, ví dụ:

Chọn * từ crosstab ('...', '...')
    Như CT (ROW_NAME TEXT, Text Text, Cat1 Text, Cat2 Text, Cat3 Text, Cat4 Text);

Điều này sẽ tạo ra kết quả như:

<== Cột giá trị ==
Row_Name Extra Cat1 Cat2 Cat3 Cat4
---------+-------+------+------+------+------
  ROW1 Extra1 Val1 Val4
  Row2 Extra2 Val5 Val6 Val7

Thetừmệnh đề phải xác định số lượng cột đầu ra thích hợp của kèo bóng đá việt nam loại dữ liệu thích hợp. Nếu cónCột trongSource_SQLKết quả của truy vấn, đầu tiênn-2 trong số chúng phải khớp với lần đầu tiênn-2 Cột đầu ra. kèo bóng đá việt nam cột đầu ra còn lại phải có loại cột cuối cùng củaSource_SQLKết quả của Truy vấn và phải có chính xác như nhiều trong số chúng có kèo bóng đá việt nam trongcategory_sqlKết quả của truy vấn.

ThecrosstabHàm tạo ra một hàng đầu ra cho mỗi nhóm kèo bóng đá việt nam hàng đầu vào liên tiếp có cùngROW_NAMEGiá trị. Đầu raROW_NAMECột, cộng với bất kỳMạnhExtraHồiCột, được sao chép từ kèo bóng đá việt nam đầu tiên của nhóm. Đầu ragiá trịkèo bóng đá việt nam cột được lấp đầy bằnggiá trịkèo bóng đá việt nam trường từ kèo bóng đá việt nam hàng có khớpthể loạiGiá trị. Nếu một kèo bóng đá việt namthể loạiKhông phù hợp với bất kỳ đầu ra nào củacategory_sqlTruy vấn, nógiá trịbị bỏ qua. kèo bóng đá việt nam cột đầu ra có danh mục phù hợp không có trong bất kỳ hàng đầu vào nào của nhóm được lấp đầy bằng nulls.

Trong thực tếSource_SQLTruy vấn phải luôn chỉ địnhĐặt kèo bóng đá việt nam bởi 1Để đảm bảo rằng kèo bóng đá việt nam giá trị có cùngROW_NAMEđược kết hợp với nhau. Tuy nhiên, việc đặt hàng kèo bóng đá việt nam danh mục trong một nhóm không quan trọng. Ngoài ra, điều cần thiết là phải chắc chắn rằng thứ tự củacategory_sqlĐầu ra của truy vấn khớp với thứ tự cột đầu ra được chỉ định.

Đây là hai ví dụ hoàn chỉnh:

Tạo doanh số bán bảng (năm int, tháng int, qty int);
chèn vào giá trị bán kèo bóng đá việt nam (2007, 1, 1000);
chèn vào giá trị bán kèo bóng đá việt nam (2007, 2, 1500);
chèn vào giá trị bán kèo bóng đá việt nam (2007, 7, 500);
chèn vào giá trị bán kèo bóng đá việt nam (2007, 11, 1500);
chèn vào giá trị bán kèo bóng đá việt nam (2007, 12, 2000);
chèn vào giá trị bán kèo bóng đá việt nam (2008, 1, 1000);

Chọn * Từ Crosstab (
  'Chọn năm, tháng, QTY từ đơn đặt kèo bóng đá việt nam bán kèo bóng đá việt nam bằng 1',
  'Chọn M từ Generate_Series (1,12) m'
) BẰNG (
  năm int,
  "Jan" int,
  "Feb" int,
  "Mar" int,
  "APR" int,
  "May" int,
  "Jun" int,
  "Jul" int,
  "Aug" int,
  "Sep" int,
  "OCT" int,
  "Nov" int,
  "Dec" int
);
 năm | Jan | Tháng 2 | MAR | APR | Tháng 5 | Jun | Tháng 7 | Tháng 8 | Tháng 9 | Tháng 10 | Tháng 11 | Tháng mười hai
------+------+------+-----+-----+-----+-----+-----+-----+-----+-----+------+------
 2007 | 1000 | 1500 |     |     |     |     | 500 |     |     |     | 1500 | 2000
 2008 | 1000 |      |     |     |     |     |     |     |     |     |      |
(2 kèo bóng đá việt nam)
Tạo bảng CTH (văn bản rowid, dấu thời gian RowDt, văn bản thuộc tính, văn bản val);
Chèn vào kèo bóng đá việt nam giá trị c ('test1', '01 tháng 3 năm 2003', 'nhiệt độ', '42');
Chèn vào kèo bóng đá việt nam giá trị c ('test1', '01 tháng 3 năm 2003', 'test_result', 'pass');
Chèn vào kèo bóng đá việt nam giá trị c ('test1', '01 tháng 3 năm 2003', 'volts', '2.6987');
Chèn vào kèo bóng đá việt nam giá trị c ('test2', '02 tháng 3 năm 2003', 'nhiệt độ', '53');
Chèn vào kèo bóng đá việt nam giá trị c ('test2', '02 tháng 3 năm 2003', 'test_result', 'fail');
Chèn vào kèo bóng đá việt nam giá trị c ('test2', '02 tháng 3 năm 2003', 'test_startdate', '01 tháng 3 năm 2003');
Chèn vào kèo bóng đá việt nam giá trị c ('test2', '02 tháng 3 năm 2003', 'volts', '3.1234');

Chọn * Từ Crosstab
.
  'Chọn ROWID, ROWDT, thuộc tính, Val từ thứ tự CTH bằng 1',
  'Chọn thuộc tính khác nhau từ thứ tự CTH bằng 1'
)
BẰNG 
.
       Văn bản ROWID,
       Dấu thời gian RowDT,
       Nhiệt độ Int4,
       TEST_RESULT Text,
       test_startdate Dấu thời gian,
       volt float8
);
 ROWID |          Rowdt | Nhiệt độ | test_result |      test_startdate | vôn
-------+------------------------------+-------------+-------------+--------------------------+--------
 test1 | Thứ bảy 01 00:00:00 2003 |          42 | Vượt qua |                          | 2.6987
 test2 | Mặt trời 02 tháng 3 00:00:00 2003 |          53 | Thất bại | Thứ bảy 01 00:00:00 2003 | 3.1234
(2 hàng)

Bạn có thể tạo kèo bóng đá việt nam chức năng được xác định trước để tránh phải viết ra tên và loại cột kết quả trong mỗi truy vấn. Xem kèo bóng đá việt nam ví dụ trong phần trước. Hàm C bên dưới cho dạng này củacrosstabđược đặt têncrosstab_hash.

F.43.1.5.Connectby #

37403_37566

TheConnectbyHàm tạo ra màn hình dữ liệu phân cấp được lưu trữ trong bảng. Bảng phải có một trường chính xác định duy nhất kèo bóng đá việt nam hàng và trường cha mẹ tham chiếu cha mẹ (nếu có) của mỗi hàng.ConnectbyCó thể hiển thị cây con giảm dần từ bất kỳ kèo bóng đá việt nam nào.

Bảng F.33Giải thích kèo bóng đá việt nam tham số.

Bảng F.33.Connectbytham số

tham số Mô tả
Relname Tên của mối quan hệ nguồn
keyid_fld Tên của trường chính
Parent_keyid_fld Tên của trường cha mẹ
OrderBy_FLD Tên của trường để đặt kèo bóng đá việt nam anh chị em theo (tùy chọn)
start_with Giá trị khóa của kèo bóng đá việt nam để bắt đầu tại
MAX_DEPTH Độ sâu tối đa để hạ xuống hoặc bằng không cho độ sâu không giới hạn
cành_delim Chuỗi để tách kèo bóng đá việt nam phím với đầu ra nhánh (tùy chọn)

kèo bóng đá việt nam trường khóa và cha mẹ có thể là bất kỳ loại dữ liệu nào, nhưng chúng phải là cùng một loại. Lưu ý rằngstart_withGiá trị phải được nhập dưới dạng chuỗi văn kèo bóng đá việt nam, bất kể loại trường chính.

TheConnectbyHàm được tuyên bố trả lạiSetof Record, Vì vậy, kèo bóng đá việt nam tên và loại thực tế của kèo bóng đá việt nam cột đầu ra phải được xác định trongtừmệnh đề của cuộc gọiChọnCâu lệnh, ví dụ:

40612_40779

Hai cột đầu ra đầu tiên được sử dụng cho khóa kèo bóng đá việt nam hiện tại và phím kèo bóng đá việt nam của nó; Họ phải khớp với loại trường chính của bảng. Cột đầu ra thứ ba là độ sâu trong cây và phải loạiSố nguyên. Nếu acành_delimTham số đã được đưa ra, cột đầu ra tiếp theo là màn hình nhánh và phải thuộc loạiText. Cuối cùng, nếu mộtOrderBy_FLDTham số đã được đưa ra, cột đầu ra cuối cùng là số sê -ri và phải thuộc loạiSố nguyên.

ThecànhKhănCột đầu ra hiển thị đường dẫn của kèo bóng đá việt nam phím được thực hiện để đạt được hàng hiện tại. kèo bóng đá việt nam khóa được phân tách bằng được chỉ địnhcành_delimChuỗi. Nếu không có hiển thị chi nhánh nào, hãy bỏ qua cảcành_delimtham số và cột nhánh trong danh sách cột đầu ra.

Nếu thứ tự của anh chị em của cùng một phụ huynh là quan trọng, bao gồmOrderBy_FLDTham số để chỉ định trường nào để đặt kèo bóng đá việt nam anh chị em. Trường này có thể thuộc bất kỳ loại dữ liệu có thể sắp xếp. Danh sách cột đầu ra phải bao gồm cột nối số số tiếp số nguyên cuối cùng, nếu và chỉ khiOrderBy_FLDđược chỉ định.

kèo bóng đá việt nam tham số đại diện cho tên bảng và trường được sao chép AS-IS vào kèo bóng đá việt nam truy vấn SQL màConnectbyTạo nội bộ. Do đó, bao gồm kèo bóng đá việt nam trích dẫn kép nếu kèo bóng đá việt nam tên là trường hợp hỗn hợp hoặc chứa kèo bóng đá việt nam ký tự đặc biệt. Bạn cũng có thể cần phải trình độ Schema-đủ điều kiện.

Trong kèo bóng đá việt nam bảng lớn, hiệu suất sẽ kém trừ khi có chỉ mục trên trường khóa phụ huynh.

Điều quan trọng là làcành_delimChuỗi không xuất hiện trong bất kỳ giá trị khóa nào, khácConnectbyCó thể báo cáo không chính xác một lỗi thu được vô hạn. Lưu ý rằng nếucành_delimkhông được cung cấp, giá trị mặc định của~được sử dụng cho mục đích phát hiện đệ quy.

Đây là một ví dụ:

Tạo bảng Connectby_Tree (văn bản keyid, văn bản Parent_keyid, pos int);

Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('ROW1', NULL, 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row2', 'Row1', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row3', 'Row1', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row4', 'Row2', 1);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row5', 'Row2', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row6', 'Row4', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row7', 'Row3', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row8', 'Row6', 0);
Chèn vào kèo bóng đá việt nam giá trị ConnectBy_Tree ('Row9', 'Row5', 0);

- với nhánh, không có orderBy_fld (thứ tự kết quả không được đảm bảo)
Chọn * từ Connectby ('ConnectBy_Tree', 'KeyId', 'Parent_KeyId', 'Row2', 0, '~')
 Như t (văn bản keyid, văn bản Parent_keyid, cấp độ int, văn bản nhánh);
 KEYID | Parent_keyid | Cấp độ |       chi nhánh
-------+--------------+-------+-------------------------
 hàng2 |              |     0 | ROW2
 hàng4 | hàng2 |     1 | hàng2 ~ hàng4
 hàng6 | hàng4 |     2 | hàng2 ~ hàng4 ~ hàng6
 hàng8 | hàng6 |     3 | Hàng2 ~ ROW4 ~ ROW6 ~ ROW8
 hàng5 | hàng2 |     1 | hàng2 ~ hàng5
 hàng9 | hàng5 |     2 | hàng2 ~ hàng5 ~ hàng9
(6 hàng)

- Không có nhánh, không có OrderBy_FLD (thứ tự kết quả không được đảm bảo)
Chọn * Từ Connectby ('Connectby_Tree', 'KeyId', 'Parent_KeyId', 'Row2', 0)
 Như t (văn bản keyid, văn bản Parent_keyid, cấp độ int);
 KEYID | Parent_keyid | mức độ
-------+--------------+-------
 hàng2 |              |     0
 hàng4 | hàng2 |     1
 hàng6 | hàng4 |     2
 hàng8 | hàng6 |     3
 hàng5 | hàng2 |     1
 hàng9 | hàng5 |     2
(6 hàng)

- với nhánh, với OrderBy_FLD (lưu ý rằng ROW5 đến trước ROW4)
Chọn * từ Connectby ('ConnectBy_Tree', 'KeyID', 'Parent_KeyId', 'POS', 'Row2', 0, '~')
 Như t (văn bản keyid, văn bản Parent_keyid, cấp độ int, văn bản chi nhánh, pos int);
 KEYID | Parent_keyid | Cấp độ |       Chi nhánh | POS
-------+--------------+-------+---------------------+-----
 hàng2 |              |     0 | hàng2 |   1
 hàng5 | hàng2 |     1 | hàng2 ~ hàng5 |   2
 hàng9 | hàng5 |     2 | hàng2 ~ hàng5 ~ hàng9 |   3
 hàng4 | hàng2 |     1 | hàng2 ~ hàng4 |   4
 hàng6 | hàng4 |     2 | hàng2 ~ hàng4 ~ hàng6 |   5
 hàng8 | hàng6 |     3 | hàng2 ~ hàng4 ~ hàng6 ~ hàng8 |   6
(6 hàng)

- Không có nhánh, với OrderBy_FLD (lưu ý rằng ROW5 đến trước ROW4)
Chọn * từ Connectby ('ConnectBy_Tree', 'KeyId', 'Parent_KeyId', 'POS', 'Row2', 0)
 Như t (văn bản keyid, văn bản Parent_keyid, cấp độ int, pos int);
 KEYID | Parent_keyid | Cấp độ | POS
-------+--------------+-------+-----
 hàng2 |              |     0 |   1
 hàng5 | hàng2 |     1 |   2
 hàng9 | hàng5 |     2 |   3
 hàng4 | hàng2 |     1 |   4
 hàng6 | hàng4 |     2 |   5
 hàng8 | hàng6 |     3 |   6
(6 hàng)

F.43.2. Tác giả#

Joe Conway

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ớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.