Postgresql | ||||
---|---|---|---|---|
prev | Backward nhanh | Chương 8. | Chuyển tiếp nhanh | NEXT |
PostgreSQLCho phép các cột của
Để minh họa việc sử dụng các loại tỷ lệ kèo bóng đá tối nay, chúng tôi tạo ra điều này
Tạo bảng SAL_EMP (
Như được hiển thị, một loại dữ liệu tỷ lệ kèo bóng đá tối nay được đặt tên bằng cách nối thêm hình vuông[]) đến tên kiểu dữ liệu củaSAL_EMPVới một cột loạiText(tên),Số nguyên(pay_by_quarter), đại diện choText(Lịch trình), đại diện cho nhân viên
Cú pháp choTạo bảngCho phép
Tạo bảng Tictactoe (
Tuy nhiên, việc triển khai hiện tại bỏ qua mọi được cung cấp
Việc triển khai hiện tại không thực thi được tuyên bốTạo bảngchỉ đơn giản là tài liệu; Nó không ảnh hưởng đến thời gian chạy
một cú pháp thay thế, phù hợp với tiêu chuẩn SQL bằng cáchtỷ lệ kèo bóng đá tối nay, có thể được sử dụngpay_by_quarterCó thể đã được xác định
pay_by_quarter tỷ lệ kèo bóng đá tối nay số nguyên [4],
Hoặc, nếu không có kích thước tỷ lệ kèo bóng đá tối nay nào được chỉ định:
pay_by_quarter tỷ lệ kèo bóng đá tối nay số nguyên,
Tuy nhiên, như trước đây,PostgreSQLKhông thực thi kích thước
Để viết giá trị tỷ lệ kèo bóng đá tối nay dưới dạng hằng số theo nghĩa đen, hãy gửi
'Val1 Delim Val2 Delim... '
WHEREDelimlà dấu phân cáchpg_typemục nhập. Trong số các loại dữ liệu tiêu chuẩnPostgreSQLPhân phối, tất cả đều sử dụng dấu phẩy (,),Boxsử dụng a;). MỗiVallà hằng số của tỷ lệ kèo bóng đá tối nay
'1,2,3, 4,5,6, 7,8,9'
Hằng số này là một tỷ lệ kèo bóng đá tối nay hai chiều, 3 x 3 bao gồm
Để đặt phần tử của hằng số tỷ lệ kèo bóng đá tối nay thành null, viếtnullcho giá trị phần tử. (Bất kìnullSẽ làm.) Nếu bạn muốn một giá trị chuỗi thực tế"NULL", bạn phải đặt dấu ngoặc kép xung quanh
(Những loại hằng số tỷ lệ kèo bóng đá tối nay này thực sự chỉ là mộtPhần. Hằng số ban đầu được coi là một chuỗi và
Bây giờ chúng ta có thể hiển thị một sốChènCâu lệnh:
Chèn vào sal_emp
Kết quả của hai lần chèn trước trông như thế này:
Chọn * từ sal_emp;
tỷ lệ kèo bóng đá tối nay đa chiều phải có phạm vi phù hợp cho mỗi tỷ lệ kèo bóng đá tối nay
Chèn vào sal_emp
Thetỷ lệ kèo bóng đá tối nayCú pháp Constructor có thể
Chèn vào sal_emp
Lưu ý rằng các phần tử tỷ lệ kèo bóng đá tối nay là hằng số SQL thông thường hoặctỷ lệ kèo bóng đá tối nayCú pháp Constructor làPhần.
Bây giờ, chúng ta có thể chạy một số truy vấn trên bảng. Đầu tiên, chúng tôi hiển thị
Chọn tên từ SAL_EMP trong đó pay_by_quarter [1] < pay_by_quarter [2];
Số đăng ký tỷ lệ kèo bóng đá tối nay được viết trong hình vuôngPostgreSQLSử dụng đánh số một dựa trênnCác phần tử bắt đầu bằngtỷ lệ kèo bóng đá tối nay [1]và kết thúc bằngtỷ lệ kèo bóng đá tối nay [n].
Truy vấn này lấy tiền lương quý thứ ba của tất cả
Chọn pay_by_quarter [3] từ sal_emp;
Chúng ta cũng có thể truy cập các lát hình chữ nhật tùy ý của một tỷ lệ kèo bóng đá tối nay,18617_18630:giới hạn trêncho một hoặc nhiều kích thước tỷ lệ kèo bóng đá tối nay. Ví dụ, truy vấn này
Chọn Lịch trình [1: 2] [1: 1] từ sal_emp trong đó tên = 'Bill';
Nếu bất kỳ thứ nguyên nào được viết dưới dạng một lát cắt, tức là, chứa một1với số được chỉ định. Vì[2]được coi là[1: 2], như trong ví dụ này:
Chọn Lịch trình [1: 2] [2] từ SAL_EMP trong đó Tên = 'Bill';
Để tránh sự nhầm lẫn với trường hợp không trượt, tốt nhất là sử dụng[1: 2] [1: 1], không[2] [1: 1].
Biểu thức đăng ký tỷ lệ kèo bóng đá tối nay sẽ trả về NULL nếuLịch trìnhHiện tại có kích thước[1: 3] [1: 2]Sau đó tham khảoLịch trình [3] [3]mang lại null. Tương tự, một tỷ lệ kèo bóng đá tối nay
Một biểu thức lát tỷ lệ kèo bóng đá tối nay tương tự mang lại NULL nếu tỷ lệ kèo bóng đá tối nay
Kích thước hiện tại của bất kỳ giá trị tỷ lệ kèo bóng đá tối nay nào có thể được truy xuấtmảng_dims
chức năng:
chọn Array_DIMS (Lịch trình) từ Sal_emp WHERE Tên = 'Carol';
mảng_dims
Sản xuất ATextKết quả, thuận tiện chomảng_upper
vàArray_Lower
, trả lại phần trên và dưới
chọn Array_UPPER (Lịch trình, 1) từ sal_emp trong đó name = 'carol';
Array_length
Sẽ trả về
chọn Array_Lpm (Lịch trình, 1) từ SAL_EMP trong đó pay_by_quarter | = '';
có thể thay thế một giá trị tỷ lệ kèo bóng đá tối nay:
CẬP NHẬT SAL_EMP SET PAY_BY_QUARTER = '25000,25000,27000,27000'
hoặc sử dụngtỷ lệ kèo bóng đá tối nayBiểu thức
Cập nhật SAL_EMP SET PAY_BY_QUARTER = tỷ lệ kèo bóng đá tối nay [25000,25000,27000,27000]
Một tỷ lệ kèo bóng đá tối nay cũng có thể được cập nhật tại một phần tử duy nhất:
CẬP NHẬT SAL_EMP SET PAY_BY_QUARTER [4] = 15000
hoặc được cập nhật bằng một lát:
Cập nhật SAL_EMP SET PAY_BY_QUARTER [1: 2] = '27000,27000'
Giá trị tỷ lệ kèo bóng đá tối nay được lưu trữ có thể được mở rộng bằng cách gán choMyArrayHiện tại có 4 yếu tố, nó sẽ cóMyArray [6];MyArray [5]sẽ chứa null. Hiện tại, sự mở rộng theo cách này là
Bài tập đã đăng ký cho phép tạo ra các tỷ lệ kèo bóng đá tối nay khôngMyArray [-2: 7]Để tạo một tỷ lệ kèo bóng đá tối nay với
Giá trị tỷ lệ kèo bóng đá tối nay mới cũng có thể được xây dựng bằng cách sử dụng||:
Chọn tỷ lệ kèo bóng đá tối nay [1,2] || tỷ lệ kèo bóng đá tối nay [3,4];
Toán tử Concatenation cho phép một phần tử duy nhấtn-Dimensionaln-Dimensional vàn+1-Dimensional Array.
Khi một phần tử được đẩy vào đầu hoặc bắt đầu
chọn Array_DIMS (1 || '[0: 1] = 2,3' :: int []);
Khi hai tỷ lệ kèo bóng đá tối nay có số lượng bằng nhau
chọn Array_DIMS (tỷ lệ kèo bóng đá tối nay [1,2] || tỷ lệ kèo bóng đá tối nay [3,4,5]);
khi mộtn-Dimensional tỷ lệ kèo bóng đá tối nayn+1-Dimensional tỷ lệ kèo bóng đá tối nay, kết quả làn25726_25788n+1-dimensional
chọn Array_DIMS (tỷ lệ kèo bóng đá tối nay [1,2] || tỷ lệ kèo bóng đá tối nay [[3,4], [5,6]]);
Một tỷ lệ kèo bóng đá tối nay cũng có thể được xây dựng bằng cách sử dụng các chức năngArray_Prepend
, Array_Append
hoặcmảng_cat
. Hai người đầu tiên chỉ hỗ trợmảng_cat
Hỗ trợ các tỷ lệ kèo bóng đá tối nay đa chiều.
chọn Array_Prepend (1, tỷ lệ kèo bóng đá tối nay [2,3]);
Để tìm kiếm giá trị trong một tỷ lệ kèo bóng đá tối nay, mỗi giá trị phải
Chọn * từ SAL_EMP trong đó pay_by_quarter [1] = 10000 hoặc
Tuy nhiên, điều này nhanh chóng trở nên tẻ nhạt cho các tỷ lệ kèo bóng đá tối nay lớn vàPhần 9,21. Các truy vấn trên
Chọn * từ SAL_EMP WHERE 10000 = Any (pay_by_quarter);
Ngoài ra, bạn có thể tìm thấy các hàng trong đó tỷ lệ kèo bóng đá tối nay có tất cả
Chọn * từ SAL_EMP WHERE 10000 = all (pay_by_quarter);
Ngoài ra,Generate_subscripts
có thể sử dụng chức năng. Vì
Chọn * Từ
Hàm này được mô tả trongBảng.
Tip:tỷ lệ kèo bóng đá tối nay không phải là bộ; Tìm kiếm cụ thể
Biểu diễn văn bản bên ngoài của giá trị tỷ lệ kèo bóng đá tối nay bao gồmvà) Xung quanh giá trị tỷ lệ kèo bóng đá tối nay cộng với dấu phân cách,) nhưng có thểtypdelimCài đặt cho loại phần tử của tỷ lệ kèo bóng đá tối nay.PostgreSQLPhân phối, tất cả đều sử dụng dấu phẩy,Box, sử dụng một;). Trong một đa chiều
Thói quen đầu ra tỷ lệ kèo bóng đá tối nay sẽ đặt dấu ngoặc kép xung quanhnull. Gấp đôi
Theo mặc định, giá trị chỉ mục giới hạn dưới của một tỷ lệ kèo bóng đá tối nay[]) xung quanh mỗi tỷ lệ kèo bóng đá tối nay:) ký tự dấu phân cách ở giữa. tỷ lệ kèo bóng đá tối nay=). Ví dụ:
Chọn F1 [1] [-2] [3] là E2, F1 [1] [-1] [5]
Thói quen đầu ra tỷ lệ kèo bóng đá tối nay sẽ bao gồm các kích thước rõ ràng trong
Nếu giá trị được viết cho một phần tử làNULL(Trong mọi trường hợp biến thể), phần tử được lấy"NULL"sẽ được nhập. Ngoài ra, cho ngượcPostgreSQL, Themảng_nullsTham số cấu hình có thể được bậtTẮTĐể đàn áp nhận dạngnullnhư một null.
Như được hiển thị trước đó, khi viết một giá trị tỷ lệ kèo bóng đá tối nay bạn có thể sử dụngphảilàm như vậy nếunullcũng phải được trích dẫn. Để đặt một báo giá kép
Bạn có thể thêm khoảng trắng trước khi nẹp trái hoặc sau một bên phải
Lưu ý:Hãy nhớ rằng những gì bạn viết trong SQLTextGiá trị tỷ lệ kèo bóng đá tối nay chứa dấu gạch chéo ngược và A
Chèn ... Giá trị (e '"\\\", "\" "');Bộ xử lý chuỗi EScape loại bỏ một cấp độ của"\", "\" ". Lần lượt,TextDữ liệu\và"tương ứng. (Nếu chúng ta làbyteachoPhần) có thể được sử dụng để tránh sự cần thiết phải tăng gấp đôi
Tip:Thetỷ lệ kèo bóng đá tối nayCú pháp Constructor (xemPhần) thường dễ làm việc hơntỷ lệ kèo bóng đá tối nay, Cá nhân