PostgreSQL 8.2.3 婺桺桺懼
劯锔媆锔䆹4. SQL 臺濘媆誕嬉誕

4.1. 臉濘䂷悇

SQL 膷噖䫌婔係彖变傴䂇潊㔗婔溇变傴䫌婔係彖螄埙悇潊䫘婔婻彖埙(";")䂷儆㔗膷噖敕䔇䂽溵幘䂷溘婔溇变傴㔗巻底螄埙滇劽濘䔇埡喿庯䬹垔变傴䔇臺濘㔗

螄埙埇傖滇婔婻噿髞庖湺臖严嚘埙寙啘䔇湺臖严桺橸(潡婩麟)㔕䬹枪䔇庖严严埙㔗螄埙锔婩䫌䷺䍘彖锫(䷺湚/tab/扵臯严)嘖套悩婉庻婘晙晖䔇施唍幘埇傖婉䫘(锔婩埻滇婔婻䬹枪庖严婯婔底噽垄螄埙䌂傋䕩誂䔇施唍)㔗

埥崡婘 SQL 膷噖麯埇傖橬濘麪㔗垄傸婉滇螄埙垄傸垂鍙婪京昽庯䷺䍘㔗

懫套婋彖变傴滇(臺濘婪)劽濘䔇 SQL 膷噖

SELECT * FROM MY_TABLE;
UPDATE MY_TABLE SET A = 5;
INSERT INTO MY_TABLE VALUES (3, 'hi there');

認麯滇婬溇变傴䔇废彖懟溇婔臯(儘䞇幽婉襕挗認幽啔崔溇变傴埇傖婘婔臯麯剘溇变傴幘埇傖劽䊖婄彖輗潊崔臯)㔗

套悩傯巻底螄埙湺臖变傴㔕巻底滇淉嘩昄潡埗昄䔇蓐庥蔄荏SQL 臺濘幽婉滇麂婩婔躘㔗锔婩崘庹婻螄埙滇变傴劉庖啹溴婪麵䔇冋床潏傸锔婩埇傖臘滇婔婻"SELECT"㔕婔婻"UPDATE"㔕启婔婻"INSERT"变傴㔗婉誺UPDATE 变傴攂滇襕挗婔婻 SET 婘昊婻嘉䘞庺䯄幽婫認婻䬹垔䔇 INSERT 誻襕挗橬婔婻 VALUES 欉垯昘㔗懟溇变傴䔇庖䇞臺濘蓇彍鄘婘 Part VI 麯柟誄㔗

4.1.1. 湺臖严启噿髞庖

償婪麵冋床麯䔇 SELECT, UPDATE, VALUES 認湙䔇螄埙鄘滇噿髞庖䔇冋床幘儌滇闼底婘 SQL 臺蘔麯橬啺垔劆幬䔇剘臉㔗螄埙 MY_TABLEA湺臖严䔇冋床㔗湹扞嘪䫘垄傸䔇变傴䔇婉劯垄傸湺臖臘㔕庖枕㔕潡蔙噽垄昄扞康凹茇䔇劉庖㔗啹溴橬施唍埻滇䞔剘婄埆垄傸"劉庖"㔗噿髞庖启湺臖严橬五劯湙䔇臉濘䂷悇懟攺滇潏傸婘澇橬螴臖認䓉臺蘔幋嬉滇方濘寺彖婔婻螄埙滇湺臖严誻滇劉庖㔗嘹埇傖婘鍇嘘C麯欆彄婔婻噿髞庖䔇垯昘彖臘㔗

SQL 湺臖严启噿髞庖媙釂傖婔婻庖應(a-z 傖埪婥埻阿严䔇庖應启麂括婕庖應)潡婋彐亪(_)嚔崘锟劯䔇庖严埇傖滇庖應㔕婋彐亪㔕昄庖(0-9)㔕䆯噄严埙($)㔗驔襕濘懟䔇滇湹扞 SQL 湺庖䆯噄严埙婉噕螩庺䯄婘湺臖严婺啹溴嘪䫘䆯噄严埙儖婉滷䓂洉㔗SQL 湺庖婉嚔垔幬寙劆昄庖潡蔙傖婋彐亪嚔崘潡䂷儆䔇噿髞庖啹溴毬䙓認麯䔇湚嚟垔幬䔇湺臖严滇垬噘䔇婉嚔启儖準湺庖䔇欷匘䬹攓喾仕㔗

係䂘嘪䫘婉轙誺 NAMEDATALEN-1 婻庖严嘩婺湺臖严嘹埇傖婘变傴婺喍敘阪䔇劉庖嘖垄傸嚔赆潻桺㔗NAMEDATALEN 䔇䚺䩕唚滇 64 啹溴湺臖严橔崓阪庥滇 63 㔗套悩蓬冖認婻鍊彽橬閞鵻闼幽嘹埇傖婘 src/include/postgres_ext.h 麯媞櫹 NAMEDATALEN 準櫹埻垄㔗

湺臖严启噿髞庖劉庖鄘滇崓償喍方噿䔇㔗啹溴

UPDATE MY_TABLE SET A = 5;

幘埇傖京昽婄喍潊

uPDaTE my_TabLE SeT a = 5;

婔䓉喘幹愇滇檪噿髞庖喍潊崓喍蔯劉庖京䫘償喍

UPDATE my_table SET a = 5;

誻橬丸庯䓉湺臖严彖锫湺臖严嚘埙寙啘䔇湺臖严㔗垄滇锔誺婘埯嚘埙(")婺寙啘傂懟庖严废彖嘵潊䔇㔗彖锫湺臖严攂滇婔婻湺臖严蔯婉滇噿髞庖㔗啹溴嘹埇傖䫘"select"臘䴺婔婻庖枕潡蔙臘䔇劉庖蔯婔婻澇橬嚘埙䔇 select 儖赆嘷啔婔溇变傴䔇婔鄘彖啹溴套悩檪垄嘷啔婔婻臘劉潡蔙庖枕劉嘪䫘䔇臺儌嚔库䫘婔婻彖悊髍臇㔗婪麵䔇冋床埇傖䫘嚘埙寙啘䔇湺臖严認幽喍

UPDATE "my_table" SET "a" = 5;

嚘埙寙啘䔇湺臖严埇傖寙劆䚡乕婉京庯镽䔇傂懟庖严(襕寙劆婔婻埯嚘埙埇傖喍婴婻䕩誂䔇埯嚘埙)㔗認湙潏傸儌埇傖悇锹闼底寘橸滇婉噕螩䔇臘劉潡蔙庖枕劉懫套闼底寙劆䷺䍘潡婯埙(&)䔇劉庖㔗嘖阪庥鍊彽冺斓㔗

檪婔婻湺臖严䫘嚘埙寙啘蕙準劯施幘傴垄崓償喍䕩噿蔯澇橬嚘埙寙啘蕙準䔇劉庖攂滇蘸潊償喍㔗懫套潏傸螴婺湺臖严 FOO, foo, "foo" 滇京備䔇 PostgreSQL 劉庖嘖 "Foo""FOO" 婯婪麵婬婻傖埪垄傸幋閘鄘滇婉劯䔇㔗PostgreSQL 麯凹橻媹嚘埙䔇劉床攂滇蘸扵潊償喍認启 SQL 湺庖滇婉噚垹䔇SQL 湺庖襕挗橻䫘嚘埙寙啘蕙準䔇劉庖攂滇蘸潊崓喍㔗啹溴湹扞湺庖foo 京庯 "FOO" 嘖婉京庯 "foo" 㔗套悩嘹愿䚡喍埇䓂洉䔇䘋废闼幽潏傸傺螞嘹襕幽儌攂滇䫘嚘埙寙啘昊婻劉庖襕幽儌傯準婉嚘㔗

4.1.2. 婩麟

婘 PostgreSQL 麯橬婬䓉锊劆䌂傋䔇婩麟庖严婾㔕嘉婾㔕昄唚㔗婩麟幘埇傖弄滯婺滯䇞䔇䌂傋認湙儌埇傖嘪䫘敘庖䇞䔇臘䯄嘵嚟傖埪埇傖锔誺係䂘敘橬昽婄崇䊖㔗認底儖婘劯麵䔇償誗柟誄㔗

4.1.2.1. 庖严婾婩麟

SQL 麯䔇婔婻庖严婾桺橸滇䫘剘嚘埙(')寙啘䔇傂懟庖严废彖懫套 'This is a string' 㔗認䓉弄滯庖严婾婩麟䔇桹濘滇 SQL 湺庖垔幬䔇㔗婘認䓉䌂傋䔇庖严婾婩麟麯啯噖剘嚘埙䔇湺庖噚垹䔇啔濘滇显噖婴婻誂䂺䔇剘嚘埙懫套 'Dianne''s horse' 㔗濘懟婴婻誂䂺䔇剘嚘埙婉滇埯嚘埙(")㔗

婴婻埻滇锔誺躿儏婔婻扵臯严䔇䷺䍘彖锫䔇庖严婾婩麟嚔赆誂毖婘婔蕙幽嘷啔垄傸滇喍潊婔婻婩麟崇䊖㔗懫套

SELECT 'foo'
'bar';

京昽庯

SELECT 'foobar';

SELECT 'foo'      'bar';

滇麂濘䔇臺濘㔗認婻攻嚗䔇臯婺滇 SQL 弄滯䔇PostgreSQL 镕冻湺庖㔗

PostgreSQL 誻噕螩 "锄锩"庖严婾婺䔇喙垹認滇婔婻 PostgreSQL 凹 SQL 湺庖䔇欷匘㔗锄锩庖严婾臺濘滇锔誺婘庖严婾嬉喍庖應 E(崓喍潡蔙償喍)䔇桹濘弄滯䔇㔗懫套 E'foo' 㔗嘷驔襕䂺臯寙劆锄锩庖严䔇庖严婾施備驔襕婘丸婔臯䔇嚔哋嚘埙嬉喍婪 E 儌埇傖庖㔗锄锩庖严婾嘪䫘䔇滇C-鼯湚䔇埉桩溹(\)锄锩\b(锔湚)㔕\f(誕亩)㔕\n(扵臯)㔕\r(啂蘥)㔕\t(愘广彽臘严)㔗溴崡誻櫇毕 \digits 湚嚟䔇锄锩庖严(認麯䔇 digits 滇婔婻噆誕彽庖誗昄唚)傖埪 \xhexdigits 湚嚟䔇锄锩庖严(認麯䔇hexdigits 傼臘剕噺誕彽庖誗唚)㔗嘹录傺䔇庖誗废彖滇劥滇橉媇単䔇庖严镖䚡乕脘毖埖䔇溼䇞庖严滇嘹躻噌䔇蘼傂㔗傂嘘噽垄虘婘埉桩溹劯麵䔇庖严鄘嘷啔桺橸䩋写㔗啹溴襕婘庖严婾婩麟麯寙劆埉桩溹彍喍婴婻埉桩溹(\\)㔗埥崡PostgreSQL 噕螩䫘婔婻埉桩溹準锄锩剘嚘埙(\')婉誺儖準䬽橸䔇 PostgreSQL 儖婉噕螩認幽䫘㔗欔傖橔喘应毕嘪䫘严劽湺庖䔇 ''

躥只

套悩陉䘞埗昄 standard_conforming_strings 䔇唚滇 off 闼幽 PostgreSQL 儖脘崘臖彆欔橬(方螺橬方嬉凚 E)庖严婾婩麟婺䔇埉桩溹锄锩認滇婺庖婯誺寂䔇寖埾臯婺噚垹㔗荘䇽 standard_conforming_strings 䕞嬉䔇邻螴唚滇 off 嘖滇婘婉幙䔇儖準嚔埻潊 on 傖婯湺庖噚垹㔗潏傸隷媌婘庫䫘婺婉嘪䫘埉桩溹锄锩㔗套悩嘹䇞垂驔襕嘪䫘埉桩溹锄锩準臘䴺䬹枪庖严闼幽臙婘庖严婾婩麟嬉媹婪 E 傖䇞媺脘崘赆溼䇞䔇崇䊖㔗

standard_conforming_strings 幋崡escape_string_warningbackslash_quote 陉䘞埗昄幘嘌巉庖严婾婩麟婺埉桩溹䔇崇䊖㔗

䚡乕婺镽䔇庖严婉噕螩庺䯄婘庖严婾婩麟婺㔗

4.1.2.2. 䆯噄严䘯垔庖严婾婩麟

儘䞇弄滯庖严婾婩麟䔇湺庖桹濘锔婩鄘冽桹冪嘖滇套悩庖严婾婺寙劆冽崔剘嚘埙潡蔙埉桩溹闼幽䊖蓼庖严婾䔇喙垹埇脘儌嚔埻冖冽若潷啹婺懟婻剘嚘埙鄘襕媹唉㔗婺庖螷認䓉婺劽婋䔇昖臵敘噙埇臂攓PostgreSQL 噕螩埥崡婔䓉䓄嘩"䆯噄严䘯垔"䔇庖严婾婩麟幥喍媂濘㔗婔婻锔誺䆯噄严䘯垔弄滯䔇庖严婾婩麟䫌婔婻䆯噄严埙($)㔕镽婻潡崔婻庖严䂇潊䔇"螄埙"㔕埥婔婻䆯噄严埙㔕䂇潊庖严婾婩麟䔇傂懟庖严废彖㔕婔婻䆯噄严埙㔕婯嬉麵䕩劯䔇螄埙㔕婔婻䆯噄严埙䂇潊䔇㔗懫套婋麵滇婴婻婉劯䔇䫘䆯噄严䘯垔䔇桹濘弄滯"Dianne's horse"䔇冋床

$$Dianne's horse$$
$SomeTag$Dianne's horse$SomeTag$

臙濘懟婘䆯噄严䘯垔䔇庖严婾麯剘嚘埙婉噕螩锄锩㔗垂鍙婪婘婔婻䆯噄严䘯垔䔇庖严婾麯婉噕螩锄锩傂嘘庖严庖严婾喙垹攂滇毬䙓庖麵喙垹幥喍㔗埉桩溹婉滇䬹枪䔇㔕䆯噄严躻噌幘婉滇䬹枪䔇(鍴麂垄傸启嚔湺了䔇婔鄘彖对陉)㔗

潏傸埇傖锔誺婘婉劯啯喖亓彆嘪䫘婉劯䔇"湺螄"準垂䯄啯喖㔗橔婩蓕䔇滇喍庘昄垔幬䔇施唍㔗懫套

$function$
BEGIN
    RETURN ($1 ~ $q$[\t\r\n\v\\]$q$);
END;
$function$

認麯废彖 $q$[\t\r\n\v\\]$q$ 臘䴺婔婻䆯噄严䘯垔䔇庖严婾桺橸 [\t\r\n\v\\] 婘庘昄嘷赆 PostgreSQL 欓臯䔇施唍垄儖赆臖彆庺準㔗嘖滇啹婺認婻废彖婉对陉崡北䔇䘯垔严 $function$ 欔傖埻襕蔄荏庖崡北庖严婾垄儌埻滇婩麟麯麵䔇捞锔庖严蔯噾㔗

套悩橬湺了䔇臺婔婻䆯噄严䘯垔䔇庖严婾镕冻启方嚘埙寙啘䔇湺臖严䕩劯䔇蓇彍埻滇垄婉脘寙劆䆯噄严㔗湺了滇崓償喍䕩噿䔇啹溴 $tag$String content$tag$ 滇溼䇞䔇蔯 $TAG$String content$tag$ 彍滇髍臇䔇㔗

婔婻劯麵䘓虘五噿髞庖潡蔙湺臖严䔇䆯噄严䘯垔庖严婾媙釂䫘䷺䍘婯噽劯䔇噿髞庖潡蔙湺臖严锫嚔劥彍䆯噄严䘯垔严儖嚔赆嘷嘩湺臖严䔇嚔崘鄘彖([寘桺] otherwise the dollar quoting delimiter would be taken as part of the preceding identifier)㔗

䆯噄严䘯垔婉滇 SQL 湺庖嘖滇婘喍崉溗䔇庖严婾桺橸䔇施唍垄锔婩懫湺庖䔇剘嚘埙臺濘敘桹冪㔗儴噽滇婘噽垄婩麟麯臘䯄庖严婾婩麟䔇施唍敘橬䫘㔗懫套婘誺䘋庘昄垔幬麯套悩䫘剘嚘埙臺濘懟婻婪麵冋床麯䔇懟婻埉桩溹鄘媙釂喍啕婻垄傸婘嘩婺庖严婾桺橸彖悊䔇施唍嚔废儏婺婴婻䇽劯婘庘昄欓臯䔇施唍婘喙北庖严婾婩麟麯嚔喉渇赆蓼悊婺婔婻㔗

4.1.2.3. 嘉婾婩麟

嘉婾婩麟䩋蕙準冽償婘嚔嚘埙嬉麵橬婔婻 B(崓喍潡償喍)䔇捞锔庖严婾(垄傸幋閘澇橬䷺䍘)懫套 B'1001' 㔗嘉婾婩麟麯埇傖䫘䔇庖严埻橬 01

埥崡嘉婾婩麟埇傖䫘剕噺誕彽臘䴺濘弄滯桹濘滇嘪䫘嬉䚔 X(崓喍潡蔙償喍)懫套 X'1FF' 噽婺䔇懟婻剕噺誕彽嘉京昽庯啕婻庯誕彽嘉㔗

婴䓉嘵嚟䔇嘉婾婩麟鄘埇傖償捞锔庖严婾婩麟闼湙虘臯誂䂺㔗嘉婾婩麟婉脘䫘䆯噄严䘯垔㔗

4.1.2.4. 昄唚婩麟

昄唚婩麟毖埖婋彖锔䫘䔇嘵嚟

digits
digits.[digits][e[+-]digits]
[digits].digits[e[+-]digits]
digitse[+-]digits

認麯䔇 digits 滇婔婻潡崔婻剕誕彽昄庖(0-9)㔗套悩橬償昄䗹闼幽躿儏橬婔嘉婘償昄䗹嬉麵潡劯麵㔗套悩庺䯄庖毺昄彖锫严(e)闼幽躿儏橬婔婻昄庖虘婘垄劯麵㔗婘婩麟麯婉脘橬䷺湚潡蔙噽垄庖严㔗臙濘懟傂嘘嬉凚溼埙潡蘘埙垂鍙婪鄘婉螴婺滇婩麟䔇婔鄘彖垄滇桘媹庯婩麟䔇婔婻淉嘩严㔗

認麯滇婔底劽濘䔇昄唚婩麟䔇冋床

42
3.5
4.
.001
5e2
1.925e-3

套悩婔婻昄唚婩麟斵婉寙劆償昄䗹幘婉寙劆毺昄淉嘩严闼幽套悩垄䔇昄唚埇傖櫆婘 integer 䌂傋婺(32嘉)彍螴婺垄滇 integer 䌂傋套悩垄䔇昄唚埇傖櫆婘 bigint 婺(64嘉)彍螴婺垄滇 bigint 劥彍螴婺垄滇 numeric 䌂傋㔗寙劆償昄䗹启/潡毺昄淉嘩严䔇婩麟攂滇赆螴婺滇 numeric 䌂傋㔗

䂍婔婻昄唚婩麟蕋庽彺哋昄扞䌂傋埻滇䌂傋蓼悊䞖濘䔇嚔䆇㔗婘崓崔昄愙喕婋臖婩麟嚔湹扞䯇嵄赆躻媘嚺彽蘸扵潊橔劽锗䔇䌂傋㔗媙襕施嘹埇傖锔誺嚺彽䌂傋蘸扵檪婔婻昄唚蓼悊潊䬹垔䔇昄扞䌂傋㔗懫套嘹埇傖嚺彽襕挗檪婔婻昄唚嘷嘩 real(float4) 䌂傋準䩋桹濘滇認幽喍

REAL '1.23'  -- 庖严婾鼯湚
1.23::REAL   -- PostgreSQL(寖埾䔇)鼯湚 

認底垂鍙婪埻滇婋麵螘螺䔇锔䫘蘸扵䔇䬹冋㔗

4.1.2.5. 噽垄䌂傋䔇婩麟

傂懟䌂傋䔇婩麟鄘埇傖䫘婋彖臘䴺濘婺䔇傂嘘婔䓉準膷噖

type 'string'
'string'::type
CAST ( 'string' AS type )

噽婺䔇 'string' 儖嚔赆蘸扵婺 type 䌂傋䔇婩麟㔗套悩婉庻婘臖婩麟欔匂䌂傋䔇溓幬闼幽埇傖䩕䘖滯䇞䔇䌂傋蘸扵(懫套嘷嘹檪垄䕘毖蕋庽婔婻臘庖枕䔇施唍)認䓉愙喕婋垄嚔躻媘蘸扵㔗

噽婺䔇 'string' 埇傖䫘捞锔 SQL 臘䴺濘潡蔙䆯噄严䘯垔準幥喍㔗

潏傸誻埇傖䫘庘昄鼯湚䔇臺濘準弄滯䌂傋蘸扵

typename ( 'string' )

婉誺幽麂欔橬䌂傋劉鄘埇傖認湙嘪䫘埗黙誗4.2.8诙埡䂖誗㔗

::, CAST() 启庘昄脄䫘臺濘幘埇傖䫘庯弄滯傂懟臘膆嚟䔇誊臯施䌂傋蘸扵(套誗4.2.8婺螘螺䔇闼湙)㔗嘖滇 type 'string' 䔇嘵嚟埻脘䫘庯弄滯婔婻庖麵婩麟䔇䌂傋㔗type 'string' 䔇埥崡婔婻鍊彽滇垄婉脘䫘庯昄䂇䌂傋(襕䫘 ::CAST() 弄滯婔婻昄䂇婩麟䔇䌂傋)㔗

CAST() 臺濘镕冻 SQL 湺庖㔗type 'string' 臺濘滇湺庖䔇婔婻毘幪SQL 埻滇䂍儏昄庹䓉昄扞䌂傋弄滯庖認婻臺濘嘖 PostgreSQL 噕螩儖噽䫘庯欔橬䌂傋㔗:: 启庘昄脄䫘䔇臺濘滇 PostgreSQL 䔇寖埾䫘濘㔗

4.1.3. 淉嘩严

婔婻淉嘩严滇橔崔 NAMEDATALEN-1 婻(䚺䩕63婻)婋彖庖严䔇废彖

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

婉誺橬庹婻鍊彽

嘷嘹嘪䫘麂 SQL 湺庖䔇淉嘩严䔇施唍嘹锔婩驔襕䫘䷺䍘彖锫䕩闂䔇淉嘩严傖镪噉溓幬㔗懫套套悩嘹垔幬庖婔婻埆 @ 䔇噥剘䕞淉嘩严闼幽嘹儌婉脘喍潊 X*@Y 蔯滇襕喍潊 X* @Y 傖䇞媺 PostgreSQL 檪垄臂潊婴婻淉嘩严蔯婉滇婔婻㔗

4.1.4. 䬹枪庖严

橬底麂庖應昄庖庖严橬婔底䬹枪劆幬啹溴婉脘䫘啔淉嘩严㔗垄傸䔇䫘濘䂖誗埇傖婘䕩庫䔇柟誄臺濘噄䘹䔇婄桹欆彄㔗橸誗埻滇柟誄垄傸䔇庻婘启楗拸婔婋認底庖严䔇䕞䔇㔗

4.1.5. 濘麪

濘麪滇傂懟傖埯彐亪嚔崘幽傽嚩彄臯儆䔇傂懟庖严废彖懫套

-- 認滇湺庖䔇 SQL92 濘麪 

埥崡誻埇傖嘪䫘C-鼯湚䔇庖濘麪

/* 崔臯濘麪
 * 埇傖啯喖: /* 赆啯喖䔇庖濘麪 */
 */

認麯濘麪傖 /* 嚔崘幽欷匘彄凹庫䔇 */ 㔗認底庖濘麪埇傖啯喖儌償 SQL99 麯臘䔇闼湙(嘖启 C 婉婔湙)啹溴潏傸埇傖濘麪毬婔崓庖噾䂟寙劆庖濘麪䔇傼乕㔗

濘麪婘誕婔準䔇臺濘彖悊幋嬉赆傯膷噖婺敕役鍴幽䫘䷺䍘傼敪㔗

4.1.6. 臉濘嚻噽亓

臘4-1滆䴺庖 PostgreSQL 麯麵䔇淉嘩严䔇嚻噽亓启噿蕫攓㔗崓崔昄淉嘩严鄘橬䕩劯䔇嚻噽亓幽婫鄘滇噥噿蕫䔇㔗認䓉愙喕埇脘嚔橬婉闼幽䕘蓗䔇臯婺懫套婄儫淉嘩严 <> 婯婄儫淉嘩严 <=>= 幋閘橬五婉劯䔇嚻噽亓㔗劯湙嘷嘹檪埯䕞启剘䕞淉嘩严䂇劽嘪䫘䔇施唍橬施唍幘驔襕媹婖拸嚓㔗懫套

SELECT 5 ! - 6;

嚔赆彖悊潊

SELECT 5 ! (- 6);

啹婺彖悊単婉䘖長 ! 赆垔幬潊庖劯䚔淉嘩严蔯婉滇婺䚔淉嘩严(䘖長䔇施唍埻脘滇崻捔庖)㔗襕婘橸冋婺诙冖嘹驔襕䔇䬹攓嘹襕喍潊

SELECT (5 !) - 6;

認滇潏傸婺欷匘攓傻庺䔇傼備㔗

臘4-1. 淉嘩严嚻噽亓(锐废)

淉嘩严/噄䘹噿蕫攓柟誄
.臘/庖枕劉彖锫严
::PostgreSQL 䬹橬䔇䌂傋蘸扵淉嘩严
[ ]昄䂇噄䘹锬拷
-剘䕞蘘埙
^
* / %幻鍴昇
+ -媹废
IS IS TRUE, IS FALSE, IS UNKNOWN, IS NULL
ISNULL 敋臘滇劥婺 NULL
NOTNULL 敋臘滇劥婉婺 NULL
(傂嘘噽垄䔇)欔橬噽垄䔇橸婄启䫘潙垔幬淉嘩严
IN 镖劽潊叻
BETWEEN 评啘寙劆
OVERLAPS 施閘閘锫麉培
LIKE ILIKE SIMILAR 庖严婾昇嚟对陉
< > 償庯崓庯
=京庯蕋唚
NOT锂膏麂
AND锂膏婯
OR锂膏潡

臙濘懟淉嘩严嚻噽亓幘锗䫘庯启婪麵柊彄䔇劯劉䔇喙䘞淉嘩严启䫘潙垔幬淉嘩严㔗懫套套悩嘹婺婔底垵潙昄扞䌂傋垔幬婔婻"+"淉嘩严闼幽垄启喙䘞䔇"+"淉嘩严橬劯湙䔇嚻噽亓婉䞇䫘垄準幾傔幽㔗

套悩婘 OPERATOR 臺濘麯嘪䫘庖昇嚟媞閄䔇淉嘩严劉懫套

SELECT 3 OPERATOR(pg_catalog.+) 4;

闼幽 OPERATOR 悇锹儌嚔橬臘4-1麯麵婺"傂嘘噽垄"淉嘩严滆䴺䔇䚺䩕嚻噽亓㔗婉䞇傔幽䬹垔䔇淉嘩严庺䯄婘 OPERATOR() 麯鄘滇認湙㔗


劯锔饡釕嬉誕
SQL 臺濘婪婔亓唚臘膆嚟