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 kèo bóng đá hôm nay và ngày mai đượ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
Tài liệu này dành cho phiên bản kèo bóng đá hôm nay và ngày mai được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng kèo bóng đá hôm nay và ngày mai trang chohiện tạiPhiên bản hoặc một trong kèo bóng đá hôm nay và ngày mai phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

4.1. Cấu trúc từ vựng#

Đầu vào SQL bao gồm kèo bóng đá hôm nay và ngày mai chuỗilệnh. kèo bóng đá hôm nay và ngày mai lệnh bao gồm kèo bóng đá hôm nay và ngày mai chuỗimã thông báo, bị chấm dứt bởi dấu chấm phẩy (Hồi;xông). Phần cuối của luồng đầu vào cũng chấm dứt kèo bóng đá hôm nay và ngày mai lệnh.

mã thông báo có thể là kèo bóng đá hôm nay và ngày maiTừ khóa, anđịnh danh, AĐịnh danh được trích dẫn, Anghĩa đen(hoặc hằng số) hoặc ký hiệu ký tự đặc biệt. kèo bóng đá hôm nay và ngày mai mã thông báo thường được phân tách bằng khoảng trắng (không gian, tab, newline), nhưng không cần phải có nếu không có sự mơ hồ (thường chỉ là trường hợp nếu một ký tự đặc biệt liền kề với một loại mã thông báo khác).

Ví dụ: sau đây là (Syntactic) đầu vào SQL hợp lệ:

Chọn * từ my_table;

11903_12077

Ngoài ra,bình luậncó thể xảy ra trong đầu vào SQL. Chúng kèo bóng đá hôm nay và ngày mai phải là mã thông báo, chúng có hiệu quả tương đương với khoảng trắng.

Cú pháp SQL không nhất quán về những gì mã thông báo xác định kèo bóng đá hôm nay và ngày mai lệnh và đó là toán tử hoặc tham số. Một vài mã thông báo đầu tiên nói chung là tên lệnh, vì vậy trong ví dụ trên, chúng ta thường sẽ nói vềHồiChọnHồi, anCập nhậtvà kèo bóng đá hôm nay và ngày maiHồiChènKhănLệnh. Nhưng ví dụCập nhậtLệnh luôn yêu cầusetMã thông báo xuất hiện ở kèo bóng đá hôm nay và ngày mai vị trí nhất định và biến thể cụ thể này củaChèncũng yêu cầuGiá trịĐể hoàn thành. kèo bóng đá hôm nay và ngày mai quy tắc cú pháp chính xác cho mỗi lệnh được mô tả trongPhần VI.

4.1.1. Định danh và từ khóa#

mã thông báo nhưChọn, Cập nhậthoặcGiá trịTrong ví dụ trên là kèo bóng đá hôm nay và ngày mai ví dụ củaTừ khóa, nghĩa là kèo bóng đá hôm nay và ngày mai từ có ý nghĩa cố định trong ngôn ngữ SQL. Mã thông báomy_tableAlà ví dụ củaĐịnh danh. Họ xác định tên của kèo bóng đá hôm nay và ngày mai bảng, cột hoặc kèo bóng đá hôm nay và ngày mai đối tượng cơ sở dữ liệu khác, tùy thuộc vào lệnh mà chúng được sử dụng. Do đó, đôi khi chúng được gọi đơn giản làtênHồi. kèo bóng đá hôm nay và ngày mai từ khóa và định danh có cùng cấu trúc từ vựng, có nghĩa là người ta không thể biết liệu mã thông báo là một định danh hay từ khóa mà không biết ngôn ngữ.Phụ lục C.

Định danh SQL và kèo bóng đá hôm nay và ngày mai từ khóa phải bắt đầu bằng một chữ cái (A-Z, nhưng cũng có kèo bóng đá hôm nay và ngày mai chữ cái có dấu hiệu và kèo bóng đá hôm nay và ngày mai chữ cái không phải là latin) hoặc một dấu gạch dưới_). kèo bóng đá hôm nay và ngày mai ký tự tiếp theo trong một định danh hoặc từ khóa có thể là kèo bóng đá hôm nay và ngày mai chữ cái, dấu gạch dưới, chữ số (0-9) hoặc dấu hiệu đô la ($). Lưu ý rằng kèo bóng đá hôm nay và ngày mai dấu hiệu đô la không được phép trong kèo bóng đá hôm nay và ngày mai định danh theo chữ cái của tiêu chuẩn SQL, vì vậy việc sử dụng chúng có thể khiến kèo bóng đá hôm nay và ngày mai ứng dụng trở nên kém di động hơn.

Hệ thống sử dụng kèo bóng đá hôm nay và ngày mai quáĐược đặt tên-1 byte của một định danh; Tên dài hơn có thể được viết bằng kèo bóng đá hôm nay và ngày mai lệnh, nhưng chúng sẽ bị cắt ngắn.Được đặt tênlà 64 vì vậy độ dài định danh tối đa là 63 byte. Nếu giới hạn này có vấn đề, nó có thể được nâng lên bằng cách thay đổiĐược đặt tênhằng số trongsrc/bao gồm/pg_config_manual.h.

kèo bóng đá hôm nay và ngày mai từ khóa và số nhận dạng chưa được trích xuất không nhạy cảm với trường hợp. Vì thế:

Cập nhật my_table set a = 5;

có thể được viết tương đương như:

Cập nhật My_Table Set A = 5;

Một quy ước thường được sử dụng là viết kèo bóng đá hôm nay và ngày mai từ khóa trong trường hợp trên và tên trong chữ thường, ví dụ:

Cập nhật My_Table Set A = 5;

Có kèo bóng đá hôm nay và ngày mai loại định danh thứ hai:Định danh phân địnhhoặcĐịnh danh được trích dẫn. Nó được hình thành bằng cách kèm theo một chuỗi kèo bóng đá hôm nay và ngày mai ký tự tùy ý trong kèo bóng đá hôm nay và ngày mai trích dẫn kép ("). kèo bóng đá hôm nay và ngày mai định danh được phân định luôn là kèo bóng đá hôm nay và ngày mai định danh, không bao giờ là kèo bóng đá hôm nay và ngày mai từ khóa."Chọn"có thể được sử dụng để tham khảo kèo bóng đá hôm nay và ngày mai cột hoặc bảng có tênChọn, trong khi kèo bóng đá hôm nay và ngày mai được trích xuấtChọnsẽ được lấy làm từ khóa và do đó sẽ gây ra lỗi phân tích khi sử dụng khi dự kiến ​​một bảng hoặc tên cột. Ví dụ có thể được viết bằng kèo bóng đá hôm nay và ngày mai định danh được trích dẫn như thế này:

cập nhật "my_table" set "a" = 5;

Định danh được trích dẫn có thể chứa bất kỳ ký tự nào, ngoại trừ ký tự có mã số kèo bóng đá hôm nay và ngày mai. .

Trích dẫn một định danh cũng làm cho nó nhạy cảm trường hợp, trong khi kèo bóng đá hôm nay và ngày mai tên chưa được trình cấp luôn được gấp lại thành chữ thường. Ví dụ: kèo bóng đá hôm nay và ngày mai định danhfoo, foo"foo"được coi là giống nhau bởiPostgreSQL, nhưng"foo""foo"khác với ba người này và nhau. (Việc gấp kèo bóng đá hôm nay và ngày mai tên chưa được trích dẫn thành chữ thường trongPostgreSQLkhông tương thích với tiêu chuẩn SQL, trong đó nói rằng kèo bóng đá hôm nay và ngày mai tên chưa được trình bày nên được gấp lại thành trường hợp trên. Do đó,foonên tương đương với"foo"kèo bóng đá hôm nay và ngày mai"foo"Theo tiêu chuẩn. Nếu bạn muốn viết kèo bóng đá hôm nay và ngày mai ứng dụng di động, bạn nên luôn luôn trích dẫn một tên cụ thể hoặc không bao giờ trích dẫn nó.)

Một biến thể của kèo bóng đá hôm nay và ngày mai định danh được trích dẫn cho phép bao gồm kèo bóng đá hôm nay và ngày mai ký tự unicode thoát được xác định bởi kèo bóng đá hôm nay và ngày mai điểm mã của chúng. Biến thể này bắt đầu bằngU &18720_18857u & "foo". (Lưu ý rằng điều này tạo ra sự mơ hồ với toán tử&. Sử dụng kèo bóng đá hôm nay và ngày mai không gian xung quanh toán tử để tránh vấn đề này.) Bên trong kèo bóng đá hôm nay và ngày mai trích dẫn, kèo bóng đá hôm nay và ngày mai ký tự Unicode có thể được chỉ định ở dạng thoát ra bằng cách viết một dấu gạch chéo ngược, theo sau là số điểm mã hexadecimal gồm bốn chữ số hoặc thay vào đó là một dấu gạch chéo ngược sau đó là một dấu hiệu Hexadecimal sáu chữ số."Data"có thể được viết là

U & "D \ 0061T \ +000061"

Ví dụ ít tầm thường sau đây viết từ tiếng NgaHồiSlonxông(Voi) bằng chữ Cyrillic:

U & "\ 0441 \ 043b \ 043e \ 043d"

Nếu kèo bóng đá hôm nay và ngày mai ký tự thoát khác với dấu gạch chéo ngược, nó có thể được chỉ định bằng cách sử dụngUescapemệnh đề sau chuỗi, ví dụ:

U & "D! 0061T! +000061" UESCAPE '!'

Nhân vật thoát có thể là bất kỳ ký tự nào khác ngoài chữ số thập lục phân, dấu cộng, một trích dẫn duy nhất, trích dẫn kép hoặc ký tự khoảng trắng. Lưu ý rằng ký tự thoát được viết bằng kèo bóng đá hôm nay và ngày mai trích dẫn đơn, không phải dấu ngoặc kép, sauUescape.

Để bao gồm ký tự thoát trong định danh theo nghĩa đen, viết nó hai lần.

Có thể sử dụng mẫu thoát 4 chữ số hoặc 6 chữ số để chỉ định kèo bóng đá hôm nay và ngày mai cặp thay thế UTF-16 để soạn kèo bóng đá hôm nay và ngày mai ký tự có điểm mã lớn hơn U+FFFF, mặc dù tính khả dụng của biểu mẫu 6 chữ số này không cần thiết. (kèo bóng đá hôm nay và ngày mai cặp thay thế không được lưu trữ trực tiếp, nhưng được kết hợp thành một điểm mã duy nhất.)

Nếu mã hóa máy chủ không phải là UTF-8, điểm mã Unicode được xác định bởi một trong kèo bóng đá hôm nay và ngày mai chuỗi thoát này được chuyển đổi thành mã hóa máy chủ thực tế; một lỗi được báo cáo nếu điều đó là không thể.

4.1.2. Hằng số#

Có ba loạiHằng số được gõ ngầminPostgreSQL: chuỗi, chuỗi bit và số. kèo bóng đá hôm nay và ngày mai hằng số cũng có thể được chỉ định với kèo bóng đá hôm nay và ngày mai loại rõ ràng, có thể cho phép biểu diễn chính xác hơn và xử lý hiệu quả hơn bởi hệ thống.

4.1.2.1. Chuỗi hằng số#

Hằng số chuỗi trong SQL là một chuỗi kèo bóng đá hôm nay và ngày mai ký tự tùy ý bị giới hạn bởi kèo bóng đá hôm nay và ngày mai trích dẫn đơn ('), ví dụ'Đây là chuỗi'. Để bao gồm kèo bóng đá hôm nay và ngày mai ký tự đơn lẻ trong kèo bóng đá hôm nay và ngày mai hằng số chuỗi, hãy viết hai trích dẫn đơn liền kề, ví dụ:'Dianne''s Horse'. Lưu ý rằng đây làkèo bóng đá hôm nay và ngày maigiống như ký tự đôi (").

Hai hằng số chuỗi chỉ được phân tách bằng khoảng trắngVới ít nhất kèo bóng đá hôm nay và ngày mai dòng mớiđược kết hợp và xử lý hiệu quả như thể chuỗi đã được viết là kèo bóng đá hôm nay và ngày mai hằng số. Ví dụ:

Chọn 'Foo'

là tương đương với:

chọn 'foobar';

nhưng:

Chọn 'foo' 'Bar';

kèo bóng đá hôm nay và ngày mai phải là cú pháp hợp lệ. (Hành vi hơi kỳ quái này được chỉ định bởiSQL;PostgreSQLđang tuân theo tiêu chuẩn.)

4.1.2.2. Chuỗi hằng số có lối thoát theo kiểu c#

PostgreSQLCũng chấp nhậnEscapeHằng số chuỗi, là kèo bóng đá hôm nay và ngày mai phần mở rộng cho tiêu chuẩn SQL. kèo bóng đá hôm nay và ngày mai hằng số chuỗi thoát được chỉ định bằng cách viết chữ cáiE(chữ hoa hoặc chữ thường) ngay trước khi trích dẫn mở, ví dụ:e'foo '. (Khi tiếp tục một chuỗi thoát hằng số trên kèo bóng đá hôm nay và ngày mai dòng, hãy viếtEChỉ trước khi trích dẫn mở đầu tiên.) Trong kèo bóng đá hôm nay và ngày mai chuỗi thoát, kèo bóng đá hôm nay và ngày mai ký tự dấu gạch chéo ngược (\) bắt đầu giống như cBackslash Escape24311_24433Bảng 4.1.

Bảng 4.1. Trình tự thoát hiểm Backslash

Trình tự thoát Backslash Giải thích
\ B Backspace
\ f Form Feed
\ n Newline
\ r Trở lại vận chuyển
\ T tab
\o, \OO, \OOO(o= 0 Mạnh7) Giá trị byte Octal
\ xH, \ xHH(H= 0 Mạnh9, A F F) Giá trị byte lục giác
\ uxxxx, \ uxxxxxxxxx(x= 0 16 hoặc 32 bit HexAdeCimal unicode Giá trị ký tự

Bất kỳ ký tự nào khác sau kèo bóng đá hôm nay và ngày mai dấu gạch chéo ngược được thực hiện theo nghĩa đen. Do đó, để bao gồm kèo bóng đá hôm nay và ngày mai ký tự dấu gạch chéo ngược, hãy viết hai dấu gạch chéo ngược (\). Ngoài ra, kèo bóng đá hôm nay và ngày mai trích dẫn duy nhất có thể được bao gồm trong kèo bóng đá hôm nay và ngày mai chuỗi thoát bằng cách viết\ ', ngoài cách bình thường của''.

Trách nhiệm của bạn là kèo bóng đá hôm nay và ngày mai chuỗi byte bạn tạo, đặc biệt là khi sử dụng kèo bóng đá hôm nay và ngày mai lần thoát hiểm hoặc thập lục phân, soạn kèo bóng đá hôm nay và ngày mai ký tự hợp lệ trong bộ mã hóa ký tự của máy chủ. Một giải pháp thay thế hữu ích là sử dụng kèo bóng đá hôm nay và ngày mai lối thoát Unicode hoặc cú pháp Escape Escape thay thế, được giải thích trongPhần 4.1.2.3; sau đó máy chủ sẽ kiểm tra xem việc chuyển đổi ký tự có thể kèo bóng đá hôm nay và ngày mai.

THẬN TRỌNG

Nếu tham số cấu hìnhStandard_Conforming_StringsTẮT, sau đóPostgreSQLNhận ra kèo bóng đá hôm nay và ngày mai lần thoát hiểm trong cả hằng số chuỗi thường xuyên và thoát. Tuy nhiên, kể từPostgreSQL9.1, mặc định làtrên, có nghĩa là việc thoát khỏi sự ngược lại chỉ được công nhận trong kèo bóng đá hôm nay và ngày mai hằng số chuỗi thoát. Hành vi này tuân thủ tiêu chuẩn nhiều hơn, nhưng có thể phá vỡ kèo bóng đá hôm nay và ngày mai ứng dụng dựa trên hành vi lịch sử, nơi thoát khỏi sự ngược lại luôn được công nhận.TẮT, nhưng tốt hơn là di chuyển ra khỏi việc sử dụng thoát hiểm ngược. Nếu bạn cần sử dụng kèo bóng đá hôm nay và ngày mai lối thoát dấu vết để biểu diễn kèo bóng đá hôm nay và ngày mai ký tự đặc biệt, hãy viết hằng số chuỗi bằng kèo bóng đá hôm nay và ngày maiE.

NgoàiStandard_Conforming_Strings, tham số cấu hìnhESCET_STRING_WARNINGBackslash_quoteQuản lý điều trị ngược dòng trong kèo bóng đá hôm nay và ngày mai hằng số chuỗi.

ký tự có mã số 0 kèo bóng đá hôm nay và ngày mai thể nằm trong hằng số chuỗi.

4.1.2.3. Chuỗi hằng số với unicode thoát#

PostgreSQLCũng hỗ trợ một loại cú pháp thoát khác cho kèo bóng đá hôm nay và ngày mai chuỗi cho phép chỉ định kèo bóng đá hôm nay và ngày mai ký tự Unicode tùy ý theo điểm mã. Hằng số chuỗi thoát Unicode bắt đầu bằngU &(chữ cái trên hoặc chữ thường U theo sau bởi ampersand) ngay trước khi báo giá mở, kèo bóng đá hôm nay và ngày mai có bất kỳ khoảng trống nào ở giữa, ví dụu & 'foo'. (Lưu ý rằng điều này tạo ra sự mơ hồ với toán tử&. Sử dụng kèo bóng đá hôm nay và ngày mai không gian xung quanh toán tử để tránh vấn đề này.) Bên trong kèo bóng đá hôm nay và ngày mai trích dẫn, kèo bóng đá hôm nay và ngày mai ký tự Unicode có thể được chỉ định ở dạng thoát ra bằng cách viết một dấu gạch chéo ngược, theo sau là số điểm mã hexadecimal gồm bốn chữ số hoặc thay vào đó là một dấu gạch chéo ngược theo dấu hiệu cộng với số lượng mã số thập lục số sáu chữ số.'Data'có thể được viết là

U & 'D \ 0061T \ +000061'

Ví dụ ít tầm thường sau đây viết từ tiếng NgaSlonHồi(Voi) bằng chữ Cyrillic:

u & '\ 0441 \ 043b \ 043e \ 043d'

Nếu kèo bóng đá hôm nay và ngày mai ký tự lối thoát khác với mong muốn của Backslash, nó có thể được chỉ định bằng cách sử dụngUESCAPEmệnh đề sau chuỗi, ví dụ:

U & 'D! 0061T! +000061' UESCAPE '!'

ký tự thoát có thể là bất kỳ ký tự nào khác ngoài chữ số thập lục phân, dấu cộng, kèo bóng đá hôm nay và ngày mai trích dẫn duy nhất, trích dẫn kép hoặc ký tự khoảng trắng.

Để đưa ký tự thoát vào chuỗi theo nghĩa đen, viết nó hai lần.

Có thể sử dụng biểu mẫu 4 chữ số hoặc 6 chữ số hoặc có thể được sử dụng để chỉ định kèo bóng đá hôm nay và ngày mai cặp thay thế UTF-16 để soạn kèo bóng đá hôm nay và ngày mai ký tự có điểm mã lớn hơn U+FFFF, mặc dù tính khả dụng của biểu mẫu 6 chữ số này không cần thiết. (kèo bóng đá hôm nay và ngày mai cặp thay thế không được lưu trữ trực tiếp, nhưng được kết hợp thành một điểm mã duy nhất.)

Nếu mã hóa máy chủ không phải là UTF-8, điểm mã Unicode được xác định bởi một trong kèo bóng đá hôm nay và ngày mai chuỗi thoát này được chuyển đổi thành mã hóa máy chủ thực tế; một lỗi được báo cáo nếu điều đó là không thể.

Ngoài ra, cú pháp thoát Unicode cho kèo bóng đá hôm nay và ngày mai hằng số chuỗi chỉ hoạt động khi tham số cấu hìnhStandard_Conforming_Stringsđược bật. Điều này là do nếu không thì cú pháp này có thể gây nhầm lẫn cho kèo bóng đá hôm nay và ngày mai khách hàng phân tích kèo bóng đá hôm nay và ngày mai câu lệnh SQL đến mức nó có thể dẫn đến tiêm SQL và kèo bóng đá hôm nay và ngày mai vấn đề bảo mật tương tự.

4.1.2.4. Hằng số chuỗi được trích dẫn đô la#

Trong khi cú pháp tiêu chuẩn để chỉ định kèo bóng đá hôm nay và ngày mai hằng số chuỗi thường thuận tiện, có thể khó hiểu khi chuỗi mong muốn chứa nhiều trích dẫn đơn, vì mỗi trong số đó phải được nhân đôi. Để cho phép kèo bóng đá hôm nay và ngày mai truy vấn dễ đọc hơn trong kèo bóng đá hôm nay và ngày mai tình huống như vậy,POSTGRESQLcung cấp kèo bóng đá hôm nay và ngày mai cách khác, được gọi làTrích dẫn đô laKhăn, để viết kèo bóng đá hôm nay và ngày mai hằng số chuỗi. Hằng số chuỗi được trích dẫn đô la bao gồm một dấu hiệu đô la ($), tùy chọnTAGcủa số 0 hoặc nhiều ký tự, một dấu hiệu đồng đô la khác, một chuỗi kèo bóng đá hôm nay và ngày mai ký tự tùy ý tạo nên nội dung chuỗi, một dấu hiệu đô la, cùng một thẻ bắt đầu báo giá đô la này và dấu hiệu đô la. Ví dụ: đây là hai cách khác nhau để chỉ định chuỗiDianne's HorseHàngSử dụng trích dẫn đô la:

$$ Dianne's Horse $$

Lưu ý rằng bên trong chuỗi được trích xuất bằng đô la, có thể sử dụng kèo bóng đá hôm nay và ngày mai báo giá đơn mà không cần phải thoát ra. Thật vậy, không có ký tự nào trong chuỗi trích dẫn đô la từng bị thoát ra: nội dung chuỗi luôn được viết theo nghĩa đen.

Có thể làm tổ kèo bóng đá hôm nay và ngày mai hằng số chuỗi được trích xuất bằng cách chọn kèo bóng đá hôm nay và ngày mai thẻ khác nhau ở mỗi cấp độ lồng. Điều này được sử dụng phổ biến nhất trong kèo bóng đá hôm nay và ngày mai định nghĩa chức năng viết.

$ chức năng $

Ở đây, chuỗi$ q $ [\ t \ r \ n \ v \] $ q $đại diện cho chuỗi chữ được trích dẫn bằng đô la[\ t \ r \ n \ v \], sẽ được nhận dạng khi cơ thể chức năng được thực thi bởiPostgreSQL. Nhưng vì chuỗi kèo bóng đá hôm nay và ngày mai khớp với Dollar Dollar trích dẫn DELIMITER$ hàm $, Nó chỉ là kèo bóng đá hôm nay và ngày mai số ký tự khác trong hằng số cho đến khi chuỗi bên ngoài có liên quan.

TAG, nếu có, của chuỗi được trích dẫn theo đô la tuân theo kèo bóng đá hôm nay và ngày mai quy tắc giống như một định danh không được trích xuất, ngoại trừ việc nó không thể chứa một dấu hiệu đô la. Thẻ nhạy cảm, vì vậy$ Tag $ Chuỗi nội dung $ Tag $là chính xác, nhưng$ Tag $ Chuỗi nội dung $ Tag $kèo bóng đá hôm nay và ngày mai phải.

Chuỗi được trích dẫn theo đô la theo từ khóa hoặc định danh phải được tách ra khỏi nó bằng khoảng trắng; Nếu không thì dấu phân cách trích dẫn đô la sẽ được lấy như là kèo bóng đá hôm nay và ngày mai phần của định danh trước.

Trích dẫn đô la không phải là một phần của tiêu chuẩn SQL, nhưng nó thường là một cách thuận tiện hơn để viết kèo bóng đá hôm nay và ngày mai chuỗi chuỗi phức tạp hơn so với cú pháp trích dẫn đơn theo tiêu chuẩn. Nó đặc biệt hữu ích khi biểu diễn kèo bóng đá hôm nay và ngày mai hằng số chuỗi bên trong kèo bóng đá hôm nay và ngày mai hằng số khác, như thường cần trong kèo bóng đá hôm nay và ngày mai định nghĩa chức năng thủ tục.

4.1.2.5. Hằng số chuỗi bit#

Hằng số chuỗi bit trông giống như kèo bóng đá hôm nay và ngày mai hằng số chuỗi thông thường với AB(chữ hoa hoặc chữ thường) ngay trước khi báo giá mở (kèo bóng đá hôm nay và ngày mai có khoảng trắng can thiệp), ví dụ:B'1001 '. kèo bóng đá hôm nay và ngày mai ký tự duy nhất được phép trong kèo bóng đá hôm nay và ngày mai hằng số chuỗi bit là01.

Ngoài ra, kèo bóng đá hôm nay và ngày mai hằng số chuỗi bit có thể được chỉ định trong ký hiệu thập lục phân, sử dụng hàng đầux(trên hoặc chữ thường), ví dụ:X'1ff '. Ký hiệu này tương đương với hằng số chuỗi bit với bốn chữ số nhị phân cho mỗi chữ số thập lục phân.

Cả hai dạng hằng số bit có thể được tiếp tục trên kèo bóng đá hôm nay và ngày mai dòng giống như kèo bóng đá hôm nay và ngày mai hằng số chuỗi thông thường. Trích dẫn đô la không thể được sử dụng trong hằng số chuỗi bit.

4.1.2.6. Hằng số số#

Hằng số số được chấp nhận trong kèo bóng đá hôm nay và ngày mai hình thức chung này:

Digits
chữ số. [chữ số] [E [+-]chữ số]Digits].chữ số[E [+-]Digits]DigitsE [+-]chữ số

WHEREDigitslà kèo bóng đá hôm nay và ngày mai hoặc nhiều chữ số thập phân (0 đến 9). Ít nhất kèo bóng đá hôm nay và ngày mai chữ số phải là trước hoặc sau điểm thập phân, nếu kèo bóng đá hôm nay và ngày mai chữ số được sử dụng.E), nếu có mặt. Không thể có bất kỳ khoảng trống hoặc kèo bóng đá hôm nay và ngày mai ký tự khác được nhúng trong hằng số, ngoại trừ dấu gạch dưới, có thể được sử dụng để nhóm trực quan như được mô tả dưới đây.

Đây là kèo bóng đá hôm nay và ngày mai số ví dụ về hằng số số hợp lệ:


42
3.5
4.
.001
5E2
1.925E-3

Ngoài ra, kèo bóng đá hôm nay và ngày mai hằng số nguyên không quyết định được chấp nhận trong kèo bóng đá hôm nay và ngày mai hình thức này:

0xHexDigits0OacdDigits0bBindigits

WHEREHexDigitslà kèo bóng đá hôm nay và ngày mai hoặc nhiều chữ số thập lục phân (0-9, a-f),OCTDigitslà kèo bóng đá hôm nay và ngày mai hoặc nhiều chữ số bát phân (0-7) vàBindigitslà một hoặc nhiều chữ số nhị phân (0 hoặc 1). kèo bóng đá hôm nay và ngày mai chữ số thập lục phân và tiền tố radix có thể ở trên hoặc chữ thường.

Đây là kèo bóng đá hôm nay và ngày mai số ví dụ về hằng số nguyên không quyết định hợp lệ:


0b100101
0b10011001
0O273
0O755
0x42F
0xffff

Để nhóm trực quan, dấu gạch dưới có thể được chèn giữa kèo bóng đá hôm nay và ngày mai chữ số. Chúng không có tác dụng gì thêm về giá trị của hằng số.


1_500_000_000
0B10001000_00000000
0O_1_755
0xffff_ffff
1.618_034

Không được phép ở độ cao hoặc kết thúc hằng số hoặc một nhóm kèo bóng đá hôm nay và ngày mai chữ số (nghĩa là, ngay trước hoặc sau điểm thập phân hoặc điểm số mũ) và không được phép ở độ dưới trong một hàng.

kèo bóng đá hôm nay và ngày mai hằng số không chứa kèo bóng đá hôm nay và ngày mai điểm thập phân cũng như số mũ ban đầu được coi là loạiSố nguyênNếu giá trị của nó phù hợp với loạiSố nguyên(32 bit); Nếu kèo bóng đá hôm nay và ngày mai thì nó được cho là loạiBigintNếu giá trị của nó phù hợp với loạiBIGINT(64 bit); nếu kèo bóng đá hôm nay và ngày mai thì nó được coi là loạiSố. kèo bóng đá hôm nay và ngày mai hằng số chứa kèo bóng đá hôm nay và ngày mai điểm thập phân và/hoặc số mũ luôn được coi là loạiSố.

Loại dữ liệu được gán ban đầu của hằng số số chỉ là điểm bắt đầu cho kèo bóng đá hôm nay và ngày mai thuật toán độ phân giải loại. Trong hầu hết kèo bóng đá hôm nay và ngày mai trường hợp, hằng số sẽ được tự động ép buộc theo loại phù hợp nhất tùy thuộc vào ngữ cảnh.Ví dụ: bạn có thể buộc kèo bóng đá hôm nay và ngày mai giá trị số được coi là loạiReal(float4) bằng cách viết:

Real '1.23' - String Style

Đây thực sự là những trường hợp đặc biệt của kèo bóng đá hôm nay và ngày mai ký hiệu đúc chung được thảo luận tiếp theo.

4.1.2.7. Hằng số của kèo bóng đá hôm nay và ngày mai loại khác#

Hằng số của kèo bóng đá hôm nay và ngày maitùy ýLoại có thể được nhập bằng bất kỳ một trong kèo bóng đá hôm nay và ngày mai ký hiệu sau:

loại'chuỗi'chuỗi'::loạicast ('chuỗi' BẰNGloại)

Văn bản của hằng số được chuyển sang thói quen chuyển đổi đầu vào cho loại được gọi làloại. Kết quả là kèo bóng đá hôm nay và ngày mai hằng số của loại được chỉ định.

Hằng số chuỗi có thể được viết bằng cách sử dụng ký hiệu SQL thông thường hoặc truy xuất đô la.

Cũng có thể chỉ định kèo bóng đá hôm nay và ngày mai loại ép buộc bằng cách sử dụng cú pháp giống như hàm:

typename('chuỗi' )

Nhưng không phải tất cả kèo bóng đá hôm nay và ngày mai tên loại đều có thể được sử dụng theo cách này; nhìn thấyPhần 4.2.9Để biết chi tiết.

The::, cast ()và cú pháp gọi chức năng cũng có thể được sử dụng để chỉ định chuyển đổi loại thời gian chạy của kèo bóng đá hôm nay và ngày mai biểu thức tùy ý, như đã thảo luận trongPhần 4.2.9. Để tránh sự mơ hồ của cú pháp,loại'chuỗi'Cú pháp chỉ có thể được sử dụng để chỉ định loại hằng số đơn giản. kèo bóng đá hôm nay và ngày mai hạn chế khác trênloại'chuỗi'Cú pháp là nó không hoạt động cho kèo bóng đá hôm nay và ngày mai loại mảng; sử dụng::hoặccast ()Để chỉ định loại hằng số mảng.

Thecast ()Cú pháp phù hợp với SQL. Theloại'chuỗi'Cú pháp là kèo bóng đá hôm nay và ngày mai khái quát của tiêu chuẩn: SQL Chỉ định cú pháp này chỉ cho kèo bóng đá hôm nay và ngày mai vài loại dữ liệu, nhưngPOSTGRESQLCho phép nó cho tất cả kèo bóng đá hôm nay và ngày mai loại. Cú pháp với::là lịch sửPOSTGRESQLSử dụng, cũng như cú pháp gọi chức năng.

4.1.3. Người vận hành#

Tên toán tử là kèo bóng đá hôm nay và ngày mai chuỗi lên đếnĐược đặt tên-1 (63 theo mặc định) kèo bóng đá hôm nay và ngày mai ký tự từ danh sách sau:


+-*/< = ~! @#%^& |

Tuy nhiên, có kèo bóng đá hôm nay và ngày mai vài hạn chế đối với tên toán tử:

  • --/*kèo bóng đá hôm nay và ngày mai thể xuất hiện ở bất cứ đâu trong tên toán tử, vì chúng sẽ được lấy làm bắt đầu nhận xét.

  • Tên toán tử nhiều ký tự kèo bóng đá hôm nay và ngày mai thể kết thúc bằng+hoặc-, trừ khi tên cũng chứa ít nhất kèo bóng đá hôm nay và ngày mai trong những ký tự này:


    ~! @#%^& |

    Ví dụ:@-là tên toán tử được phép, nhưng*-kèo bóng đá hôm nay và ngày mai. Hạn chế này cho phépPOSTGRESQLĐể phân tích kèo bóng đá hôm nay và ngày mai truy vấn tuân thủ SQL mà không yêu cầu khoảng cách giữa kèo bóng đá hôm nay và ngày mai mã thông báo.

Khi làm việc với tên toán tử không theo tiêu chuẩn SQL, bạn thường sẽ cần tách kèo bóng đá hôm nay và ngày mai toán tử liền kề với không gian để tránh sự mơ hồ. Ví dụ: nếu bạn đã xác định toán tử tiền tố có tên@, bạn kèo bóng đá hôm nay và ngày mai thể viếtx*@y; Bạn phải viếtX* @YĐể đảm bảo rằngPOSTGRESQLĐọc nó dưới dạng hai tên toán tử không kèo bóng đá hôm nay và ngày mai.

4.1.4. Ký tự đặc biệt#

kèo bóng đá hôm nay và ngày mai số ký tự không phải là chữ và số có ý nghĩa đặc biệt khác với việc trở thành người vận hành. Chi tiết về việc sử dụng có thể được tìm thấy tại vị trí mô tả phần tử cú pháp tương ứng.

  • kèo bóng đá hôm nay và ngày mai dấu hiệu đô la ($) Theo sau là kèo bóng đá hôm nay và ngày mai chữ số được sử dụng để biểu diễn một tham số vị trí trong phần thân của định nghĩa hàm hoặc câu lệnh đã chuẩn bị. Trong kèo bóng đá hôm nay và ngày mai bối cảnh khác, dấu hiệu đồng đô la có thể là một phần của định danh hoặc hằng số chuỗi được trích dẫn đô la.

  • ngoặc đơn (()) Có ý nghĩa thông thường của chúng đối với kèo bóng đá hôm nay và ngày mai biểu thức nhóm và thực thi ưu tiên. Trong một số trường hợp, dấu ngoặc đơn được yêu cầu như là một phần của cú pháp cố định của một lệnh SQL cụ thể.

  • Cấu trúc ([]) được sử dụng để chọn kèo bóng đá hôm nay và ngày mai phần tử của một mảng. Nhìn thấyPhần 8.15Để biết thêm thông tin về mảng.

  • dấu phẩy (,) được sử dụng trong một số cấu trúc cú pháp để tách kèo bóng đá hôm nay và ngày mai phần tử của danh sách.

  • Semicolon (;) chấm dứt lệnh SQL. Nó không thể xuất hiện ở bất cứ đâu trong kèo bóng đá hôm nay và ngày mai lệnh, ngoại trừ trong kèo bóng đá hôm nay và ngày mai hằng số chuỗi hoặc định danh được trích dẫn.

  • Đại tá (:) được sử dụng để chọnHồiSlicesxôngTừ mảng. (Nhìn thấyPhần 8.15.) Trong kèo bóng đá hôm nay và ngày mai số phương ngữ SQL nhất định (chẳng hạn như SQL nhúng), dấu hai chấm

  • Asterisk (*) được sử dụng trong một số bối cảnh để biểu thị tất cả kèo bóng đá hôm nay và ngày mai trường của hàng bảng hoặc giá trị tổng hợp. Nó cũng có một ý nghĩa đặc biệt khi được sử dụng làm đối số của hàm tổng hợp, cụ thể là tổng hợp không yêu cầu bất kỳ tham số rõ ràng nào.

  • giai đoạn (.) được sử dụng trong kèo bóng đá hôm nay và ngày mai hằng số số và để phân tách lược đồ, bảng và tên cột.

4.1.5. Nhận xét#

Một bình luận là một chuỗi kèo bóng đá hôm nay và ngày mai ký tự bắt đầu với kèo bóng đá hôm nay và ngày mai dấu gạch ngang gấp đôi và mở rộng đến cuối dòng, ví dụ:

- Đây là kèo bóng đá hôm nay và ngày mai bình luận SQL tiêu chuẩn

Thay vào đó, kèo bóng đá hôm nay và ngày mai nhận xét khối kiểu C có thể được sử dụng:

/* Nhận xét đa dòng

nơi nhận xét bắt đầu bằng/*và mở rộng đến sự xuất hiện phù hợp của*/. kèo bóng đá hôm nay và ngày mai bình luận khối này làm tổ, như được chỉ định trong tiêu chuẩn SQL nhưng không giống như C, để người ta có thể nhận xét kèo bóng đá hôm nay và ngày mai khối mã lớn hơn có thể chứa kèo bóng đá hôm nay và ngày mai nhận xét khối hiện có.

kèo bóng đá hôm nay và ngày mai nhận xét được xóa khỏi luồng đầu vào trước khi phân tích cú pháp tiếp theo và được thay thế kèo bóng đá hôm nay và ngày mai cách hiệu quả bằng khoảng trắng.

4.1.6. Nhà điều hành ưu tiên#

Bảng 4.2Hiển thị ưu tiên và tính kết hợp của kèo bóng đá hôm nay và ngày mai toán tử trongPostgreSQL. Hầu hết kèo bóng đá hôm nay và ngày mai nhà khai thác có cùng mức độ ưu tiên và được liên kết trái.

Bảng 4.2. Người vận hành ưu tiên (cao nhất đến thấp nhất)

toán tử/phần tử Associativity Mô tả
. trái Dấu tách tên/cột
:: trái PostgreSQL-Style typecast
[ ] trái Lựa chọn phần tử mảng
+ - phải Unary Plus, Unary Minus
đối chiếu trái Lựa chọn đối chiếu
at trái Tại múi giờ, tại địa phương
^ trái số mũ
* / % trái Nhân, chia, modulo
+ - trái Bổ sung, trừ
(bất kỳ toán tử nào khác) trái Tất cả kèo bóng đá hôm nay và ngày mai toán tử người bản địa và người dùng khác
giữa in như ilike tương tự Ngăn chặn phạm vi, đặt thành viên, khớp chuỗi
< = <= = < kèo bóng đá hôm nay và ngày mai toán tử so sánh
isnull notnull là đúng, là sai, là null, khác với, v.v.
kèo bóng đá hôm nay và ngày mai phải phủ định logic
trái Kết hợp logic
hoặc trái Phân biệt logic

Lưu ý rằng kèo bóng đá hôm nay và ngày mai quy tắc ưu tiên toán tử cũng áp dụng cho kèo bóng đá hôm nay và ngày mai toán tử do người dùng xác định có cùng tên với kèo bóng đá hôm nay và ngày mai toán tử tích hợp đã đề cập ở trên. Ví dụ: nếu bạn xác định AHồi+57241_57328+toán tử, bất kể bạn làm gì.

Khi tên toán tử có trình độ lược đồ được sử dụng trongNhà điều hànhCú pháp, ví dụ như trong:

Chọn 3 toán tử (pg_catalog.+) 4;

TheNhà điều hànhXây dựng được thực hiện để có quyền ưu tiên mặc định được hiển thị trongBảng 4.2choBất kỳ toán tử nào khác. Điều này đúng bất kể toán tử cụ thể nào xuất hiện bên trongToán tử ().

Lưu ý

POSTGRESQLPhiên bản trước 9.5 đã sử dụng kèo bóng đá hôm nay và ngày mai quy tắc ưu tiên toán tử hơi khác nhau. Cụ thể,<= =<từng được coi là người vận hành chung;kèo bóng đá hôm nay và ngày mai bài kiểm tra được sử dụng để có mức độ ưu tiên cao hơn; Vàkèo bóng đá hôm nay và ngày mai giữavà kèo bóng đá hôm nay và ngày mai cấu trúc liên quan đã hành động không nhất quán, được thực hiện trong một số trường hợp có quyền ưu tiên củakèo bóng đá hôm nay và ngày maichứ kèo bóng đá hôm nay và ngày mai phảigiữa. kèo bóng đá hôm nay và ngày mai quy tắc này đã được thay đổi để tuân thủ tốt hơn với tiêu chuẩn SQL và để giảm sự nhầm lẫn từ việc xử lý không nhất quán kèo bóng đá hôm nay và ngày mai cấu trúc tương đương logic.kèo bóng đá hôm nay và ngày mai có toán tử như vậyKhănThất bại có thể được giải quyết bằng cách thêm dấu ngoặc đơn. Tuy nhiên, có kèo bóng đá hôm nay và ngày mai trường hợp góc trong đó một truy vấn có thể thay đổi hành vi mà không có bất kỳ lỗi phân tích cú pháp nào.