123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402 |
- Registering pre-existing tables
- onek
- int4_tbl
- INT4_TBL
- tenk1
- VARCHAR_TBL
- aggtest
- student
- varchar_tbl
- int8_tbl
- <sql-statement>
- --
- -- AGGREGATES
- --
- -- avoid bit-exact output here because operations may not be bit-exact.
- SET extra_float_digits = 0;
- </sql-statement>
- <sql-statement>
- SELECT avg(four) AS avg_1 FROM onek;
- </sql-statement>
- <sql-statement>
- SELECT avg(a) AS avg_32 FROM aggtest WHERE a < 100;
- </sql-statement>
- <sql-statement>
- -- In 7.1, avg(float4) is computed using float8 arithmetic.
- -- Round the result to 3 digits to avoid platform-specific results.
- SELECT avg(b)::numeric(10,3) AS avg_107_943 FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT avg(gpa) AS avg_3_4 FROM ONLY student;
- </sql-statement>
- <sql-statement>
- SELECT sum(four) AS sum_1500 FROM onek;
- </sql-statement>
- <sql-statement>
- SELECT sum(a) AS sum_198 FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT sum(b) AS avg_431_773 FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT sum(gpa) AS avg_6_8 FROM ONLY student;
- </sql-statement>
- <sql-statement>
- SELECT max(four) AS max_3 FROM onek;
- </sql-statement>
- <sql-statement>
- SELECT max(a) AS max_100 FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT max(aggtest.b) AS max_324_78 FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT max(student.gpa) AS max_3_7 FROM student;
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop(b) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT stddev_samp(b) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT var_pop(b) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT var_samp(b) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop(b::numeric) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT stddev_samp(b::numeric) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT var_pop(b::numeric) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT var_samp(b::numeric) FROM aggtest;
- </sql-statement>
- <sql-statement>
- -- population variance is defined for a single tuple, sample variance
- -- is not
- SELECT var_pop(1.0::float8), var_samp(2.0::float8);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop(3.0::float8), stddev_samp(4.0::float8);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('inf'::float8), var_samp('inf'::float8);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('inf'::float8), stddev_samp('inf'::float8);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('nan'::float8), var_samp('nan'::float8);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('nan'::float8), stddev_samp('nan'::float8);
- </sql-statement>
- <sql-statement>
- SELECT var_pop(1.0::float4), var_samp(2.0::float4);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop(3.0::float4), stddev_samp(4.0::float4);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('inf'::float4), var_samp('inf'::float4);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('inf'::float4), stddev_samp('inf'::float4);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('nan'::float4), var_samp('nan'::float4);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('nan'::float4), stddev_samp('nan'::float4);
- </sql-statement>
- <sql-statement>
- SELECT var_pop(1.0::numeric), var_samp(2.0::numeric);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop(3.0::numeric), stddev_samp(4.0::numeric);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('inf'::numeric), var_samp('inf'::numeric);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('inf'::numeric), stddev_samp('inf'::numeric);
- </sql-statement>
- <sql-statement>
- SELECT var_pop('nan'::numeric), var_samp('nan'::numeric);
- </sql-statement>
- <sql-statement>
- SELECT stddev_pop('nan'::numeric), stddev_samp('nan'::numeric);
- </sql-statement>
- <sql-statement>
- -- verify correct results for null and NaN inputs
- select sum(null::int4) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select sum(null::int8) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select sum(null::numeric) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select sum(null::float8) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select avg(null::int4) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select avg(null::int8) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select avg(null::numeric) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select avg(null::float8) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select sum('NaN'::numeric) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- select avg('NaN'::numeric) from generate_series(1,3);
- </sql-statement>
- <sql-statement>
- -- verify correct results for infinite inputs
- SELECT sum(x::float8), avg(x::float8), var_pop(x::float8)
- FROM (VALUES ('1'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::float8), avg(x::float8), var_pop(x::float8)
- FROM (VALUES ('infinity'), ('1')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::float8), avg(x::float8), var_pop(x::float8)
- FROM (VALUES ('infinity'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::float8), avg(x::float8), var_pop(x::float8)
- FROM (VALUES ('-infinity'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::float8), avg(x::float8), var_pop(x::float8)
- FROM (VALUES ('-infinity'), ('-infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::numeric), avg(x::numeric), var_pop(x::numeric)
- FROM (VALUES ('1'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::numeric), avg(x::numeric), var_pop(x::numeric)
- FROM (VALUES ('infinity'), ('1')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::numeric), avg(x::numeric), var_pop(x::numeric)
- FROM (VALUES ('infinity'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::numeric), avg(x::numeric), var_pop(x::numeric)
- FROM (VALUES ('-infinity'), ('infinity')) v(x);
- </sql-statement>
- <sql-statement>
- SELECT sum(x::numeric), avg(x::numeric), var_pop(x::numeric)
- FROM (VALUES ('-infinity'), ('-infinity')) v(x);
- </sql-statement>
- <sql-statement>
- -- test accuracy with a large input offset
- SELECT avg(x::float8), var_pop(x::float8)
- FROM (VALUES (100000003), (100000004), (100000006), (100000007)) v(x);
- </sql-statement>
- <sql-statement>
- SELECT avg(x::float8), var_pop(x::float8)
- FROM (VALUES (7000000000005), (7000000000007)) v(x);
- </sql-statement>
- <sql-statement>
- -- SQL2003 binary aggregates
- SELECT regr_count(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_sxx(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_syy(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_sxy(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_avgx(b, a), regr_avgy(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_r2(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT regr_slope(b, a), regr_intercept(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT covar_pop(b, a), covar_samp(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- SELECT corr(b, a) FROM aggtest;
- </sql-statement>
- <sql-statement>
- -- check single-tuple behavior
- SELECT covar_pop(1::float8,2::float8), covar_samp(3::float8,4::float8);
- </sql-statement>
- <sql-statement>
- SELECT covar_pop(1::float8,'inf'::float8), covar_samp(3::float8,'inf'::float8);
- </sql-statement>
- <sql-statement>
- SELECT covar_pop(1::float8,'nan'::float8), covar_samp(3::float8,'nan'::float8);
- </sql-statement>
- <sql-statement>
- -- test accum and combine functions directly
- CREATE TABLE regr_test (x float8, y float8);
- </sql-statement>
- <sql-statement>
- INSERT INTO regr_test VALUES (10,150),(20,250),(30,350),(80,540),(100,200);
- </sql-statement>
- <sql-statement>
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- FROM regr_test WHERE x IN (10,20,30,80);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: sum
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- <sql-statement>
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- FROM regr_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: sum
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- <sql-statement>
- SELECT float8_accum('{4,140,2900}'::float8[], 100);
- </sql-statement>
- <sql-statement>
- SELECT float8_regr_accum('{4,140,2900,1290,83075,15050}'::float8[], 200, 100);
- </sql-statement>
- <sql-statement>
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- FROM regr_test WHERE x IN (10,20,30);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: sum
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- <sql-statement>
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- FROM regr_test WHERE x IN (80,100);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: sum
- SELECT count(*), sum(x), regr_sxx(y,x), sum(y),regr_syy(y,x), regr_sxy(y,x)
- ^
- <sql-statement>
- SELECT float8_combine('{3,60,200}'::float8[], '{0,0,0}'::float8[]);
- </sql-statement>
- <sql-statement>
- SELECT float8_combine('{0,0,0}'::float8[], '{2,180,200}'::float8[]);
- </sql-statement>
- <sql-statement>
- SELECT float8_combine('{3,60,200}'::float8[], '{2,180,200}'::float8[]);
- </sql-statement>
- <sql-statement>
- SELECT float8_regr_combine('{3,60,200,750,20000,2000}'::float8[],
- '{0,0,0,0,0,0}'::float8[]);
- </sql-statement>
- <sql-statement>
- SELECT float8_regr_combine('{0,0,0,0,0,0}'::float8[],
- '{2,180,200,740,57800,-3400}'::float8[]);
- </sql-statement>
- <sql-statement>
- SELECT float8_regr_combine('{3,60,200,750,20000,2000}'::float8[],
- '{2,180,200,740,57800,-3400}'::float8[]);
- </sql-statement>
- <sql-statement>
- DROP TABLE regr_test;
- </sql-statement>
- <sql-statement>
- -- test count, distinct
- SELECT count(four) AS cnt_1000 FROM onek;
- </sql-statement>
- <sql-statement>
- SELECT count(DISTINCT four) AS cnt_4 FROM onek;
- </sql-statement>
- <sql-statement>
- select ten, count(*), sum(four) from onek
- group by ten order by ten;
- </sql-statement>
- <sql-statement>
- select ten, count(four), sum(DISTINCT four) from onek
- group by ten order by ten;
- </sql-statement>
- <sql-statement>
- -- user-defined aggregates
- SELECT newavg(four) AS avg_1 FROM onek;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- -- user-defined aggregates
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- SELECT newavg(four) AS avg_1 FROM onek;
- ^
- -stdin-:<main>:2:8: Error: No such proc: newavg
- SELECT newavg(four) AS avg_1 FROM onek;
- ^
- <sql-statement>
- SELECT newsum(four) AS sum_1500 FROM onek;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- SELECT newsum(four) AS sum_1500 FROM onek;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- SELECT newsum(four) AS sum_1500 FROM onek;
- ^
- -stdin-:<main>:1:8: Error: No such proc: newsum
- SELECT newsum(four) AS sum_1500 FROM onek;
- ^
- <sql-statement>
- SELECT newcnt(four) AS cnt_1000 FROM onek;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- SELECT newcnt(four) AS cnt_1000 FROM onek;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- SELECT newcnt(four) AS cnt_1000 FROM onek;
- ^
- -stdin-:<main>:1:8: Error: No such proc: newcnt
- SELECT newcnt(four) AS cnt_1000 FROM onek;
- ^
- <sql-statement>
- SELECT newcnt(*) AS cnt_1000 FROM onek;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: * is expected only in count function
- SELECT newcnt(*) AS cnt_1000 FROM onek;
- ^
- <sql-statement>
- SELECT oldcnt(*) AS cnt_1000 FROM onek;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: * is expected only in count function
- SELECT oldcnt(*) AS cnt_1000 FROM onek;
- ^
- <sql-statement>
- SELECT sum2(q1,q2) FROM int8_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- SELECT sum2(q1,q2) FROM int8_tbl;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- SELECT sum2(q1,q2) FROM int8_tbl;
- ^
- -stdin-:<main>:1:8: Error: No such proc: sum2
- SELECT sum2(q1,q2) FROM int8_tbl;
- ^
- <sql-statement>
- -- test for outer-level aggregates
- -- this should work
- select ten, sum(distinct four) from onek a
- group by ten
- having exists (select 1 from onek b where sum(distinct a.four) = b.four);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:5:43: Error: Aggregate functions are not allowed in: WHERE
- having exists (select 1 from onek b where sum(distinct a.four) = b.four);
- ^
- <sql-statement>
- -- this should fail because subquery has an agg of its own in WHERE
- select ten, sum(distinct four) from onek a
- group by ten
- having exists (select 1 from onek b
- where sum(distinct a.four + b.four) = b.four);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:5:22: Error: Aggregate functions are not allowed in: WHERE
- where sum(distinct a.four + b.four) = b.four);
- ^
- <sql-statement>
- -- Test handling of sublinks within outer-level aggregates.
- -- Per bug report from Daniel Grace.
- select
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1)))
- from tenk1 o;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- -- Test handling of sublinks within outer-level aggregates.
- ^
- -stdin-:<main>:4:3: Error: At function: PgSubLink, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1)))
- ^
- -stdin-:<main>:4:11: Error: At function: PgAgg
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1)))
- ^
- -stdin-:<main>:4:15: Error: At function: PgSubLink, At function: PgSelect, At function: PgSetItem
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1)))
- ^
- -stdin-:<main>:4:64: Error: No such column: unique1
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1)))
- ^
- <sql-statement>
- -- Test handling of Params within aggregate arguments in hashed aggregation.
- -- Per bug report from Jeevan Chalke.
- explain (verbose, costs off)
- select s1, s2, sm
- from generate_series(1, 3) s1,
- lateral (select s2, sum(s1 + s2) sm
- from generate_series(1, 3) s2 group by s2) ss
- order by 1, 2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Test handling of Params within aggregate arguments in hashed aggregation.
- ^
- <sql-statement>
- select s1, s2, sm
- from generate_series(1, 3) s1,
- lateral (select s2, sum(s1 + s2) sm
- from generate_series(1, 3) s2 group by s2) ss
- order by 1, 2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RangeSubselect: unsupported lateral
- select s1, s2, sm
- ^
- <sql-statement>
- explain (verbose, costs off)
- select array(select sum(x+y) s
- from generate_series(1,3) y group by y order by s)
- from generate_series(1,3) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (verbose, costs off)
- ^
- <sql-statement>
- select array(select sum(x+y) s
- from generate_series(1,3) y group by y order by s)
- from generate_series(1,3) x;
- </sql-statement>
- <sql-statement>
- --
- -- test for bitwise integer aggregates
- --
- CREATE TEMPORARY TABLE bitwise_test(
- i2 INT2,
- i4 INT4,
- i8 INT8,
- i INTEGER,
- x INT2,
- y BIT(4)
- );
- </sql-statement>
- <sql-statement>
- -- empty case
- SELECT
- BIT_AND(i2) AS "?",
- BIT_OR(i4) AS "?",
- BIT_XOR(i8) AS "?"
- FROM bitwise_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- empty case
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: ?
- -- empty case
- ^
- <sql-statement>
- COPY bitwise_test FROM STDIN NULL 'null';
- 1 1 1 1 1 B0101
- 3 3 3 null 2 B0100
- 7 7 7 3 4 B1100
- \.
- </sql-statement>
- Metacommand \. is not supported
- <sql-statement>
- SELECT
- BIT_AND(i2) AS "1",
- BIT_AND(i4) AS "1",
- BIT_AND(i8) AS "1",
- BIT_AND(i) AS "?",
- BIT_AND(x) AS "0",
- BIT_AND(y) AS "0100",
- BIT_OR(i2) AS "7",
- BIT_OR(i4) AS "7",
- BIT_OR(i8) AS "7",
- BIT_OR(i) AS "?",
- BIT_OR(x) AS "7",
- BIT_OR(y) AS "1101",
- BIT_XOR(i2) AS "5",
- BIT_XOR(i4) AS "5",
- BIT_XOR(i8) AS "5",
- BIT_XOR(i) AS "?",
- BIT_XOR(x) AS "7",
- BIT_XOR(y) AS "1101"
- FROM bitwise_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: 1
- SELECT
- ^
- <sql-statement>
- --
- -- test boolean aggregates
- --
- -- first test all possible transition and final states
- SELECT
- -- boolean and transitions
- -- null because strict
- booland_statefunc(NULL, NULL) IS NULL AS "t",
- booland_statefunc(TRUE, NULL) IS NULL AS "t",
- booland_statefunc(FALSE, NULL) IS NULL AS "t",
- booland_statefunc(NULL, TRUE) IS NULL AS "t",
- booland_statefunc(NULL, FALSE) IS NULL AS "t",
- -- and actual computations
- booland_statefunc(TRUE, TRUE) AS "t",
- NOT booland_statefunc(TRUE, FALSE) AS "t",
- NOT booland_statefunc(FALSE, TRUE) AS "t",
- NOT booland_statefunc(FALSE, FALSE) AS "t";
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- --
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: t
- --
- ^
- <sql-statement>
- SELECT
- -- boolean or transitions
- -- null because strict
- boolor_statefunc(NULL, NULL) IS NULL AS "t",
- boolor_statefunc(TRUE, NULL) IS NULL AS "t",
- boolor_statefunc(FALSE, NULL) IS NULL AS "t",
- boolor_statefunc(NULL, TRUE) IS NULL AS "t",
- boolor_statefunc(NULL, FALSE) IS NULL AS "t",
- -- actual computations
- boolor_statefunc(TRUE, TRUE) AS "t",
- boolor_statefunc(TRUE, FALSE) AS "t",
- boolor_statefunc(FALSE, TRUE) AS "t",
- NOT boolor_statefunc(FALSE, FALSE) AS "t";
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: t
- SELECT
- ^
- <sql-statement>
- CREATE TEMPORARY TABLE bool_test(
- b1 BOOL,
- b2 BOOL,
- b3 BOOL,
- b4 BOOL);
- </sql-statement>
- <sql-statement>
- -- empty case
- SELECT
- BOOL_AND(b1) AS "n",
- BOOL_OR(b3) AS "n"
- FROM bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- empty case
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: n
- -- empty case
- ^
- <sql-statement>
- COPY bool_test FROM STDIN NULL 'null';
- TRUE null FALSE null
- FALSE TRUE null null
- null TRUE FALSE null
- \.
- </sql-statement>
- Metacommand \. is not supported
- <sql-statement>
- SELECT
- BOOL_AND(b1) AS "f",
- BOOL_AND(b2) AS "t",
- BOOL_AND(b3) AS "f",
- BOOL_AND(b4) AS "n",
- BOOL_AND(NOT b2) AS "f",
- BOOL_AND(NOT b3) AS "t"
- FROM bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: f
- SELECT
- ^
- <sql-statement>
- SELECT
- EVERY(b1) AS "f",
- EVERY(b2) AS "t",
- EVERY(b3) AS "f",
- EVERY(b4) AS "n",
- EVERY(NOT b2) AS "f",
- EVERY(NOT b3) AS "t"
- FROM bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: f
- SELECT
- ^
- <sql-statement>
- SELECT
- BOOL_OR(b1) AS "t",
- BOOL_OR(b2) AS "t",
- BOOL_OR(b3) AS "f",
- BOOL_OR(b4) AS "n",
- BOOL_OR(NOT b2) AS "f",
- BOOL_OR(NOT b3) AS "t"
- FROM bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- SELECT
- ^
- -stdin-:<main>:1:1: Error: Duplicated member: f
- SELECT
- ^
- <sql-statement>
- --
- -- Test cases that should be optimized into indexscans instead of
- -- the generic aggregate implementation.
- --
- -- Basic cases
- explain (costs off)
- select min(unique1) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- --
- ^
- <sql-statement>
- select min(unique1) from tenk1;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique1) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique1) from tenk1;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique1) from tenk1 where unique1 < 42;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique1) from tenk1 where unique1 < 42;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique1) from tenk1 where unique1 > 42;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique1) from tenk1 where unique1 > 42;
- </sql-statement>
- <sql-statement>
- -- the planner may choose a generic aggregate here if parallel query is
- -- enabled, since that plan will be parallel safe and the "optimized"
- -- plan, which has almost identical cost, will not be. we want to test
- -- the optimized plan, so temporarily disable parallel query.
- begin;
- </sql-statement>
- <sql-statement>
- set local max_parallel_workers_per_gather = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: max_parallel_workers_per_gather
- set local max_parallel_workers_per_gather = 0;
- ^
- <sql-statement>
- explain (costs off)
- select max(unique1) from tenk1 where unique1 > 42000;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique1) from tenk1 where unique1 > 42000;
- </sql-statement>
- <sql-statement>
- rollback;
- </sql-statement>
- <sql-statement>
- -- multi-column index (uses tenk1_thous_tenthous)
- explain (costs off)
- select max(tenthous) from tenk1 where thousand = 33;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- multi-column index (uses tenk1_thous_tenthous)
- ^
- <sql-statement>
- select max(tenthous) from tenk1 where thousand = 33;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select min(tenthous) from tenk1 where thousand = 33;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select min(tenthous) from tenk1 where thousand = 33;
- </sql-statement>
- <sql-statement>
- -- check parameter propagation into an indexscan subquery
- explain (costs off)
- select f1, (select min(unique1) from tenk1 where unique1 > f1) AS gt
- from int4_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- check parameter propagation into an indexscan subquery
- ^
- <sql-statement>
- select f1, (select min(unique1) from tenk1 where unique1 > f1) AS gt
- from int4_tbl;
- </sql-statement>
- <sql-statement>
- -- check some cases that were handled incorrectly in 8.3.0
- explain (costs off)
- select distinct max(unique2) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- check some cases that were handled incorrectly in 8.3.0
- ^
- <sql-statement>
- select distinct max(unique2) from tenk1;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique2) from tenk1 order by 1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique2) from tenk1 order by 1;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique2) from tenk1 order by max(unique2);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique2) from tenk1 order by max(unique2);
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique2) from tenk1 order by max(unique2)+1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique2) from tenk1 order by max(unique2)+1;
- </sql-statement>
- <sql-statement>
- explain (costs off)
- select max(unique2), generate_series(1,3) as g from tenk1 order by g desc;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select max(unique2), generate_series(1,3) as g from tenk1 order by g desc;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:22: Error: Generator functions are not allowed in: SELECT
- select max(unique2), generate_series(1,3) as g from tenk1 order by g desc;
- ^
- <sql-statement>
- -- interesting corner case: constant gets optimized into a seqscan
- explain (costs off)
- select max(100) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- interesting corner case: constant gets optimized into a seqscan
- ^
- <sql-statement>
- select max(100) from tenk1;
- </sql-statement>
- <sql-statement>
- -- try it on an inheritance tree
- create table minmaxtest(f1 int);
- </sql-statement>
- <sql-statement>
- create table minmaxtest1() inherits (minmaxtest);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create table minmaxtest1() inherits (minmaxtest);
- ^
- <sql-statement>
- create table minmaxtest2() inherits (minmaxtest);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create table minmaxtest2() inherits (minmaxtest);
- ^
- <sql-statement>
- create table minmaxtest3() inherits (minmaxtest);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create table minmaxtest3() inherits (minmaxtest);
- ^
- <sql-statement>
- create index minmaxtesti on minmaxtest(f1);
- </sql-statement>
- <sql-statement>
- create index minmaxtest1i on minmaxtest1(f1);
- </sql-statement>
- <sql-statement>
- create index minmaxtest2i on minmaxtest2(f1 desc);
- </sql-statement>
- <sql-statement>
- create index minmaxtest3i on minmaxtest3(f1) where f1 is not null;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: partial index is not supported yet
- create index minmaxtest3i on minmaxtest3(f1) where f1 is not null;
- ^
- <sql-statement>
- insert into minmaxtest values(11), (12);
- </sql-statement>
- <sql-statement>
- insert into minmaxtest1 values(13), (14);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.minmaxtest1
-
- <sql-statement>
- insert into minmaxtest2 values(15), (16);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.minmaxtest2
-
- <sql-statement>
- insert into minmaxtest3 values(17), (18);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.minmaxtest3
-
- <sql-statement>
- explain (costs off)
- select min(f1), max(f1) from minmaxtest;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- select min(f1), max(f1) from minmaxtest;
- </sql-statement>
- <sql-statement>
- -- DISTINCT doesn't do anything useful here, but it shouldn't fail
- explain (costs off)
- select distinct min(f1), max(f1) from minmaxtest;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- DISTINCT doesn't do anything useful here, but it shouldn't fail
- ^
- <sql-statement>
- select distinct min(f1), max(f1) from minmaxtest;
- </sql-statement>
- <sql-statement>
- drop table minmaxtest cascade;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: CASCADE is not implemented
- drop table minmaxtest cascade;
- ^
- <sql-statement>
- -- check for correct detection of nested-aggregate errors
- select max(min(unique1)) from tenk1;
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- -- check for correct detection of nested-aggregate errors
- ^
- -stdin-:<main>:1:1: Fatal: ydb/library/yql/providers/common/mkql/yql_provider_mkql.cpp:364 GetCallable(): requirement Callables.cend() != compiler failed, message: Missed callable: PgAgg
- -- check for correct detection of nested-aggregate errors
- ^
- <sql-statement>
- select (select max(min(unique1)) from int8_tbl) from tenk1;
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:8: Fatal: Execution of node: YtMapReduce!
- select (select max(min(unique1)) from int8_tbl) from tenk1;
- ^
- -stdin-:<main>:1:8: Fatal: ydb/library/yql/providers/common/mkql/yql_provider_mkql.cpp:364 GetCallable(): requirement Callables.cend() != compiler failed, message: Missed callable: PgAgg
- select (select max(min(unique1)) from int8_tbl) from tenk1;
- ^
- <sql-statement>
- --
- -- Test removal of redundant GROUP BY columns
- --
- create temp table t1 (a int, b int, c int, d int, primary key (a, b));
- </sql-statement>
- <sql-statement>
- create temp table t2 (x int, y int, z int, primary key (x, y));
- </sql-statement>
- <sql-statement>
- create temp table t3 (a int, b int, c int, primary key(a, b) deferrable);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: DEFERRABLE constraints not supported
- create temp table t3 (a int, b int, c int, primary key(a, b) deferrable);
- ^
- <sql-statement>
- -- Non-primary-key columns can be removed from GROUP BY
- explain (costs off) select * from t1 group by a,b,c,d;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Non-primary-key columns can be removed from GROUP BY
- ^
- <sql-statement>
- -- No removal can happen if the complete PK is not present in GROUP BY
- explain (costs off) select a,c from t1 group by a,c,d;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- No removal can happen if the complete PK is not present in GROUP BY
- ^
- <sql-statement>
- -- Test removal across multiple relations
- explain (costs off) select *
- from t1 inner join t2 on t1.a = t2.x and t1.b = t2.y
- group by t1.a,t1.b,t1.c,t1.d,t2.x,t2.y,t2.z;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Test removal across multiple relations
- ^
- <sql-statement>
- -- Test case where t1 can be optimized but not t2
- explain (costs off) select t1.*,t2.x,t2.z
- from t1 inner join t2 on t1.a = t2.x and t1.b = t2.y
- group by t1.a,t1.b,t1.c,t1.d,t2.x,t2.z;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Test case where t1 can be optimized but not t2
- ^
- <sql-statement>
- -- Cannot optimize when PK is deferrable
- explain (costs off) select * from t3 group by a,b,c;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Cannot optimize when PK is deferrable
- ^
- <sql-statement>
- create temp table t1c () inherits (t1);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create temp table t1c () inherits (t1);
- ^
- <sql-statement>
- -- Ensure we don't remove any columns when t1 has a child table
- explain (costs off) select * from t1 group by a,b,c,d;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Ensure we don't remove any columns when t1 has a child table
- ^
- <sql-statement>
- -- Okay to remove columns if we're only querying the parent.
- explain (costs off) select * from only t1 group by a,b,c,d;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Okay to remove columns if we're only querying the parent.
- ^
- <sql-statement>
- create temp table p_t1 (
- a int,
- b int,
- c int,
- d int,
- primary key(a,b)
- ) partition by list(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: PARTITION BY clause not supported
- create temp table p_t1 (
- ^
- <sql-statement>
- create temp table p_t1_1 partition of p_t1 for values in(1);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create temp table p_t1_1 partition of p_t1 for values in(1);
- ^
- <sql-statement>
- create temp table p_t1_2 partition of p_t1 for values in(2);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: table inheritance not supported
- create temp table p_t1_2 partition of p_t1 for values in(2);
- ^
- <sql-statement>
- -- Ensure we can remove non-PK columns for partitioned tables.
- explain (costs off) select * from p_t1 group by a,b,c,d;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- Ensure we can remove non-PK columns for partitioned tables.
- ^
- <sql-statement>
- drop table t1 cascade;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: CASCADE is not implemented
- drop table t1 cascade;
- ^
- <sql-statement>
- drop table t2;
- </sql-statement>
- <sql-statement>
- drop table t3;
- </sql-statement>
- <sql-statement>
- drop table p_t1;
- </sql-statement>
- <sql-statement>
- --
- -- Test GROUP BY matching of join columns that are type-coerced due to USING
- --
- create temp table t1(f1 int, f2 bigint);
- </sql-statement>
- <sql-statement>
- create temp table t2(f1 bigint, f22 bigint);
- </sql-statement>
- <sql-statement>
- select f1 from t1 left join t2 using (f1) group by f1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- select f1 from t1 left join t2 using (f1) group by f1;
- ^
- -stdin-:<main>:1:1: Error: Can't find column: f1
- select f1 from t1 left join t2 using (f1) group by f1;
- ^
- <sql-statement>
- select f1 from t1 left join t2 using (f1) group by t1.f1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- select f1 from t1 left join t2 using (f1) group by t1.f1;
- ^
- -stdin-:<main>:1:1: Error: Can't find column: f1
- select f1 from t1 left join t2 using (f1) group by t1.f1;
- ^
- <sql-statement>
- select t1.f1 from t1 left join t2 using (f1) group by t1.f1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- select t1.f1 from t1 left join t2 using (f1) group by t1.f1;
- ^
- -stdin-:<main>:1:1: Error: Can't find column: f1
- select t1.f1 from t1 left join t2 using (f1) group by t1.f1;
- ^
- <sql-statement>
- -- only this one should fail:
- select t1.f1 from t1 left join t2 using (f1) group by f1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- only this one should fail:
- ^
- -stdin-:<main>:1:1: Error: Can't find column: f1
- -- only this one should fail:
- ^
- <sql-statement>
- drop table t1, t2;
- </sql-statement>
- <sql-statement>
- --
- -- Test combinations of DISTINCT and/or ORDER BY
- --
- select array_agg(a order by b)
- from (values (1,4),(2,3),(3,1),(4,2)) v(a,b);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:4:8: Error: FuncCall: unsupported agg_order
- select array_agg(a order by b)
- ^
- <sql-statement>
- select array_agg(a order by a)
- from (values (1,4),(2,3),(3,1),(4,2)) v(a,b);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(a order by a)
- ^
- <sql-statement>
- select array_agg(a order by a desc)
- from (values (1,4),(2,3),(3,1),(4,2)) v(a,b);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(a order by a desc)
- ^
- <sql-statement>
- select array_agg(b order by a desc)
- from (values (1,4),(2,3),(3,1),(4,2)) v(a,b);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(b order by a desc)
- ^
- <sql-statement>
- select array_agg(distinct a)
- from (values (1),(2),(1),(3),(null),(2)) v(a);
- </sql-statement>
- <sql-statement>
- select array_agg(distinct a order by a)
- from (values (1),(2),(1),(3),(null),(2)) v(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(distinct a order by a)
- ^
- <sql-statement>
- select array_agg(distinct a order by a desc)
- from (values (1),(2),(1),(3),(null),(2)) v(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(distinct a order by a desc)
- ^
- <sql-statement>
- select array_agg(distinct a order by a desc nulls last)
- from (values (1),(2),(1),(3),(null),(2)) v(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select array_agg(distinct a order by a desc nulls last)
- ^
- <sql-statement>
- -- multi-arg aggs, strict/nonstrict, distinct/order by
- select aggfstr(a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- -- multi-arg aggs, strict/nonstrict, distinct/order by
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select aggfstr(a,b,c)
- ^
- -stdin-:<main>:2:8: Error: No such proc: aggfstr
- select aggfstr(a,b,c)
- ^
- <sql-statement>
- select aggfns(a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- select aggfns(a,b,c)
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- select aggfns(a,b,c)
- ^
- -stdin-:<main>:1:8: Error: No such proc: aggfns
- select aggfns(a,b,c)
- ^
- <sql-statement>
- select aggfstr(distinct a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: agg_distinct must be set only for aggregate functions
- select aggfstr(distinct a,b,c)
- ^
- <sql-statement>
- select aggfns(distinct a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: agg_distinct must be set only for aggregate functions
- select aggfns(distinct a,b,c)
- ^
- <sql-statement>
- select aggfstr(distinct a,b,c order by b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfstr(distinct a,b,c order by b)
- ^
- <sql-statement>
- select aggfns(distinct a,b,c order by b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by b)
- ^
- <sql-statement>
- -- test specific code paths
- select aggfns(distinct a,a,c order by c using ~<~,a)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,a,c order by c using ~<~,a)
- ^
- <sql-statement>
- select aggfns(distinct a,a,c order by c using ~<~)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,a,c order by c using ~<~)
- ^
- <sql-statement>
- select aggfns(distinct a,a,c order by a)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,a,c order by a)
- ^
- <sql-statement>
- select aggfns(distinct a,b,c order by a,c using ~<~,b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by a,c using ~<~,b)
- ^
- <sql-statement>
- -- check node I/O via view creation and usage, also deparsing logic
- create view agg_view1 as
- select aggfns(a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- -- check node I/O via view creation and usage, also deparsing logic
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(distinct a,b,c)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(distinct a,b,c order by b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,3) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(a,b,c order by b+1)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(a,a,c order by b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(a,b,c order by c using ~<~)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- create or replace view agg_view1 as
- select aggfns(distinct a,b,c order by a,c using ~<~,b)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- create or replace view agg_view1 as
- ^
- <sql-statement>
- select * from agg_view1;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_view1
-
- <sql-statement>
- select pg_get_viewdef('agg_view1'::regclass);
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "agg_view1" does not exist
- select pg_get_viewdef('agg_view1'::regclass);
- ^
- <sql-statement>
- drop view agg_view1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: View not found: 'agg_view1'
- drop view agg_view1;
- ^
- <sql-statement>
- -- incorrect DISTINCT usage errors
- select aggfns(distinct a,b,c order by i)
- from (values (1,1,'foo')) v(a,b,c), generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by i)
- ^
- <sql-statement>
- select aggfns(distinct a,b,c order by a,b+1)
- from (values (1,1,'foo')) v(a,b,c), generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by a,b+1)
- ^
- <sql-statement>
- select aggfns(distinct a,b,c order by a,b,i,c)
- from (values (1,1,'foo')) v(a,b,c), generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by a,b,i,c)
- ^
- <sql-statement>
- select aggfns(distinct a,a,c order by a,b)
- from (values (1,1,'foo')) v(a,b,c), generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,a,c order by a,b)
- ^
- <sql-statement>
- -- string_agg tests
- select string_agg(a,',') from (values('aaaa'),('bbbb'),('cccc')) g(a);
- </sql-statement>
- <sql-statement>
- select string_agg(a,',') from (values('aaaa'),(null),('bbbb'),('cccc')) g(a);
- </sql-statement>
- <sql-statement>
- select string_agg(a,'AB') from (values(null),(null),('bbbb'),('cccc')) g(a);
- </sql-statement>
- <sql-statement>
- select string_agg(a,',') from (values(null),(null)) g(a);
- </sql-statement>
- <sql-statement>
- -- check some implicit casting cases, as per bug #5564
- select string_agg(distinct f1, ',' order by f1) from varchar_tbl; -- ok
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select string_agg(distinct f1, ',' order by f1) from varchar_tbl; -- ok
- ^
- <sql-statement>
- select string_agg(distinct f1::text, ',' order by f1) from varchar_tbl; -- not ok
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select string_agg(distinct f1::text, ',' order by f1) from varchar_tbl; -- not ok
- ^
- <sql-statement>
- select string_agg(distinct f1, ',' order by f1::text) from varchar_tbl; -- not ok
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select string_agg(distinct f1, ',' order by f1::text) from varchar_tbl; -- not ok
- ^
- <sql-statement>
- select string_agg(distinct f1::text, ',' order by f1::text) from varchar_tbl; -- ok
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select string_agg(distinct f1::text, ',' order by f1::text) from varchar_tbl; -- ok
- ^
- <sql-statement>
- -- string_agg bytea tests
- create table bytea_test_table(v bytea);
- </sql-statement>
- <sql-statement>
- select string_agg(v, '') from bytea_test_table;
- </sql-statement>
- <sql-statement>
- insert into bytea_test_table values(decode('ff','hex'));
- </sql-statement>
- <sql-statement>
- select string_agg(v, '') from bytea_test_table;
- </sql-statement>
- <sql-statement>
- insert into bytea_test_table values(decode('aa','hex'));
- </sql-statement>
- <sql-statement>
- select string_agg(v, '') from bytea_test_table;
- </sql-statement>
- <sql-statement>
- select string_agg(v, NULL) from bytea_test_table;
- </sql-statement>
- <sql-statement>
- select string_agg(v, decode('ee', 'hex')) from bytea_test_table;
- </sql-statement>
- <sql-statement>
- drop table bytea_test_table;
- </sql-statement>
- <sql-statement>
- -- FILTER tests
- select min(unique1) filter (where unique1 > 100) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_filter
- select min(unique1) filter (where unique1 > 100) from tenk1;
- ^
- <sql-statement>
- select sum(1/ten) filter (where ten > 0) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_filter
- select sum(1/ten) filter (where ten > 0) from tenk1;
- ^
- <sql-statement>
- select ten, sum(distinct four) filter (where four::text ~ '123') from onek a
- group by ten;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:13: Error: FuncCall: unsupported agg_filter
- select ten, sum(distinct four) filter (where four::text ~ '123') from onek a
- ^
- <sql-statement>
- select ten, sum(distinct four) filter (where four > 10) from onek a
- group by ten
- having exists (select 1 from onek b where sum(distinct a.four) = b.four);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:3:43: Error: Aggregate functions are not allowed in: WHERE
- having exists (select 1 from onek b where sum(distinct a.four) = b.four);
- ^
- <sql-statement>
- select max(foo COLLATE "C") filter (where (bar collate "POSIX") > '0')
- from (values ('a', 'b')) AS v(foo,bar);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_filter
- select max(foo COLLATE "C") filter (where (bar collate "POSIX") > '0')
- ^
- <sql-statement>
- -- outer reference in FILTER (PostgreSQL extension)
- select (select count(*)
- from (values (1)) t0(inner_c))
- from (values (2),(3)) t1(outer_c); -- inner query is aggregation query
- </sql-statement>
- <sql-statement>
- select (select count(*) filter (where outer_c <> 0)
- from (values (1)) t0(inner_c))
- from (values (2),(3)) t1(outer_c); -- outer query is aggregation query
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:16: Error: FuncCall: unsupported agg_filter
- select (select count(*) filter (where outer_c <> 0)
- ^
- <sql-statement>
- select (select count(inner_c) filter (where outer_c <> 0)
- from (values (1)) t0(inner_c))
- from (values (2),(3)) t1(outer_c); -- inner query is aggregation query
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:16: Error: FuncCall: unsupported agg_filter
- select (select count(inner_c) filter (where outer_c <> 0)
- ^
- <sql-statement>
- select
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1))
- filter (where o.unique1 < 10))
- from tenk1 o; -- outer query is aggregation query
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:11: Error: FuncCall: unsupported agg_filter
- (select max((select i.unique2 from tenk1 i where i.unique1 = o.unique1))
- ^
- <sql-statement>
- -- subquery in FILTER clause (PostgreSQL extension)
- select sum(unique1) FILTER (WHERE
- unique1 IN (SELECT unique1 FROM onek where unique1 < 100)) FROM tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_filter
- select sum(unique1) FILTER (WHERE
- ^
- <sql-statement>
- -- exercise lots of aggregate parts with FILTER
- select aggfns(distinct a,b,c order by a,c using ~<~,b) filter (where a > 1)
- from (values (1,3,'foo'),(0,null,null),(2,2,'bar'),(3,1,'baz')) v(a,b,c),
- generate_series(1,2) i;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select aggfns(distinct a,b,c order by a,c using ~<~,b) filter (where a > 1)
- ^
- <sql-statement>
- -- check handling of bare boolean Var in FILTER
- select max(0) filter (where b1) from bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_filter
- select max(0) filter (where b1) from bool_test;
- ^
- <sql-statement>
- select (select max(0) filter (where b1)) from bool_test;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:16: Error: FuncCall: unsupported agg_filter
- select (select max(0) filter (where b1)) from bool_test;
- ^
- <sql-statement>
- -- check for correct detection of nested-aggregate errors in FILTER
- select max(unique1) filter (where sum(ten) > 0) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_filter
- select max(unique1) filter (where sum(ten) > 0) from tenk1;
- ^
- <sql-statement>
- select (select max(unique1) filter (where sum(ten) > 0) from int8_tbl) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:16: Error: FuncCall: unsupported agg_filter
- select (select max(unique1) filter (where sum(ten) > 0) from int8_tbl) from tenk1;
- ^
- <sql-statement>
- select max(unique1) filter (where bool_or(ten > 0)) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_filter
- select max(unique1) filter (where bool_or(ten > 0)) from tenk1;
- ^
- <sql-statement>
- select (select max(unique1) filter (where bool_or(ten > 0)) from int8_tbl) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:16: Error: FuncCall: unsupported agg_filter
- select (select max(unique1) filter (where bool_or(ten > 0)) from int8_tbl) from tenk1;
- ^
- <sql-statement>
- -- ordered-set aggregates
- select p, percentile_cont(p) within group (order by x::float8)
- from generate_series(1,5) x,
- (values (0::float8),(0.1),(0.25),(0.4),(0.5),(0.6),(0.75),(0.9),(1)) v(p)
- group by p order by p;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:11: Error: FuncCall: unsupported agg_order
- select p, percentile_cont(p) within group (order by x::float8)
- ^
- <sql-statement>
- select p, percentile_cont(p order by p) within group (order by x) -- error
- from generate_series(1,5) x,
- (values (0::float8),(0.1),(0.25),(0.4),(0.5),(0.6),(0.75),(0.9),(1)) v(p)
- group by p order by p;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:42: Error: ERROR: cannot use multiple ORDER BY clauses with WITHIN GROUP
- select p, percentile_cont(p order by p) within group (order by x) -- error
- ^
- <sql-statement>
- select p, sum() within group (order by x::float8) -- error
- from generate_series(1,5) x,
- (values (0::float8),(0.1),(0.25),(0.4),(0.5),(0.6),(0.75),(0.9),(1)) v(p)
- group by p order by p;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:11: Error: FuncCall: unsupported agg_order
- select p, sum() within group (order by x::float8) -- error
- ^
- <sql-statement>
- select p, percentile_cont(p,p) -- error
- from generate_series(1,5) x,
- (values (0::float8),(0.1),(0.25),(0.4),(0.5),(0.6),(0.75),(0.9),(1)) v(p)
- group by p order by p;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- select p, percentile_cont(p,p) -- error
- ^
- -stdin-:<main>:1:11: Error: At function: PgResolvedCall
- select p, percentile_cont(p,p) -- error
- ^
- -stdin-:<main>:1:11: Error: Aggregate function percentile_cont cannot be called directly
- select p, percentile_cont(p,p) -- error
- ^
- <sql-statement>
- select percentile_cont(0.5) within group (order by b) from aggtest;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_cont(0.5) within group (order by b) from aggtest;
- ^
- <sql-statement>
- select percentile_cont(0.5) within group (order by b), sum(b) from aggtest;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_cont(0.5) within group (order by b), sum(b) from aggtest;
- ^
- <sql-statement>
- select percentile_cont(0.5) within group (order by thousand) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_cont(0.5) within group (order by thousand) from tenk1;
- ^
- <sql-statement>
- select percentile_disc(0.5) within group (order by thousand) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_disc(0.5) within group (order by thousand) from tenk1;
- ^
- <sql-statement>
- select rank(3) within group (order by x)
- from (values (1),(1),(2),(2),(3),(3),(4)) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select rank(3) within group (order by x)
- ^
- <sql-statement>
- select cume_dist(3) within group (order by x)
- from (values (1),(1),(2),(2),(3),(3),(4)) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select cume_dist(3) within group (order by x)
- ^
- <sql-statement>
- select percent_rank(3) within group (order by x)
- from (values (1),(1),(2),(2),(3),(3),(4),(5)) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percent_rank(3) within group (order by x)
- ^
- <sql-statement>
- select dense_rank(3) within group (order by x)
- from (values (1),(1),(2),(2),(3),(3),(4)) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select dense_rank(3) within group (order by x)
- ^
- <sql-statement>
- select percentile_disc(array[0,0.1,0.25,0.5,0.75,0.9,1]) within group (order by thousand)
- from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_disc(array[0,0.1,0.25,0.5,0.75,0.9,1]) within group (order by thousand)
- ^
- <sql-statement>
- select percentile_cont(array[0,0.25,0.5,0.75,1]) within group (order by thousand)
- from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_cont(array[0,0.25,0.5,0.75,1]) within group (order by thousand)
- ^
- <sql-statement>
- select percentile_disc(array[[null,1,0.5],[0.75,0.25,null]]) within group (order by thousand)
- from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_disc(array[[null,1,0.5],[0.75,0.25,null]]) within group (order by thousand)
- ^
- <sql-statement>
- select percentile_cont(array[0,1,0.25,0.75,0.5,1,0.3,0.32,0.35,0.38,0.4]) within group (order by x)
- from generate_series(1,6) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_cont(array[0,1,0.25,0.75,0.5,1,0.3,0.32,0.35,0.38,0.4]) within group (order by x)
- ^
- <sql-statement>
- select ten, mode() within group (order by string4) from tenk1 group by ten;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:13: Error: FuncCall: unsupported agg_order
- select ten, mode() within group (order by string4) from tenk1 group by ten;
- ^
- <sql-statement>
- select percentile_disc(array[0.25,0.5,0.75]) within group (order by x)
- from unnest('{fred,jim,fred,jack,jill,fred,jill,jim,jim,sheila,jim,sheila}'::text[]) u(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select percentile_disc(array[0.25,0.5,0.75]) within group (order by x)
- ^
- <sql-statement>
- -- check collation propagates up in suitable cases:
- select pg_collation_for(percentile_disc(1) within group (order by x collate "POSIX"))
- from (values ('fred'),('jim')) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:25: Error: FuncCall: unsupported agg_order
- select pg_collation_for(percentile_disc(1) within group (order by x collate "POSIX"))
- ^
- <sql-statement>
- -- ordered-set aggs created with CREATE AGGREGATE
- select test_rank(3) within group (order by x)
- from (values (1),(1),(2),(2),(3),(3),(4)) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select test_rank(3) within group (order by x)
- ^
- <sql-statement>
- select test_percentile_disc(0.5) within group (order by thousand) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select test_percentile_disc(0.5) within group (order by thousand) from tenk1;
- ^
- <sql-statement>
- -- ordered-set aggs can't use ungrouped vars in direct args:
- select rank(x) within group (order by x) from generate_series(1,5) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select rank(x) within group (order by x) from generate_series(1,5) x;
- ^
- <sql-statement>
- -- outer-level agg can't use a grouped arg of a lower level, either:
- select array(select percentile_disc(a) within group (order by x)
- from (values (0.3),(0.7)) v(a) group by a)
- from generate_series(1,5) g(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:21: Error: FuncCall: unsupported agg_order
- select array(select percentile_disc(a) within group (order by x)
- ^
- <sql-statement>
- -- agg in the direct args is a grouping violation, too:
- select rank(sum(x)) within group (order by x) from generate_series(1,5) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select rank(sum(x)) within group (order by x) from generate_series(1,5) x;
- ^
- <sql-statement>
- -- hypothetical-set type unification and argument-count failures:
- select rank(3) within group (order by x) from (values ('fred'),('jim')) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select rank(3) within group (order by x) from (values ('fred'),('jim')) v(x);
- ^
- <sql-statement>
- select rank(3) within group (order by stringu1,stringu2) from tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select rank(3) within group (order by stringu1,stringu2) from tenk1;
- ^
- <sql-statement>
- select rank('fred') within group (order by x) from generate_series(1,5) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select rank('fred') within group (order by x) from generate_series(1,5) x;
- ^
- <sql-statement>
- select rank('adam'::text collate "C") within group (order by x collate "POSIX")
- from (values ('fred'),('jim')) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select rank('adam'::text collate "C") within group (order by x collate "POSIX")
- ^
- <sql-statement>
- -- hypothetical-set type unification successes:
- select rank('adam'::varchar) within group (order by x) from (values ('fred'),('jim')) v(x);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select rank('adam'::varchar) within group (order by x) from (values ('fred'),('jim')) v(x);
- ^
- <sql-statement>
- select rank('3') within group (order by x) from generate_series(1,5) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- select rank('3') within group (order by x) from generate_series(1,5) x;
- ^
- <sql-statement>
- -- divide by zero check
- select percent_rank(0) within group (order by x) from generate_series(1,0) x;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- select percent_rank(0) within group (order by x) from generate_series(1,0) x;
- ^
- <sql-statement>
- -- deparse and multiple features:
- create view aggordview1 as
- select ten,
- percentile_disc(0.5) within group (order by thousand) as p50,
- percentile_disc(0.5) within group (order by thousand) filter (where hundred=1) as px,
- rank(5,'AZZZZ',50) within group (order by hundred, string4 desc, hundred)
- from tenk1
- group by ten order by ten;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: expected at least one target column
- -- deparse and multiple features:
- ^
- <sql-statement>
- select pg_get_viewdef('aggordview1');
- </sql-statement>
- -stdin-:<main>: Fatal: Execution
- -stdin-:<main>:1:1: Fatal: Execution of node: Result
- select pg_get_viewdef('aggordview1');
- ^
- -stdin-:<main>:1:1: Fatal: ERROR: relation "aggordview1" does not exist
- select pg_get_viewdef('aggordview1');
- ^
- <sql-statement>
- select * from aggordview1 order by ten;
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.aggordview1
-
- <sql-statement>
- drop view aggordview1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: View not found: 'aggordview1'
- drop view aggordview1;
- ^
- <sql-statement>
- -- variadic aggregates
- select least_agg(q1,q2) from int8_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- -- variadic aggregates
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select least_agg(q1,q2) from int8_tbl;
- ^
- -stdin-:<main>:2:8: Error: No such proc: least_agg
- select least_agg(q1,q2) from int8_tbl;
- ^
- <sql-statement>
- select least_agg(variadic array[q1,q2]) from int8_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported func_variadic
- select least_agg(variadic array[q1,q2]) from int8_tbl;
- ^
- <sql-statement>
- select cleast_agg(q1,q2) from int8_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- select cleast_agg(q1,q2) from int8_tbl;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- select cleast_agg(q1,q2) from int8_tbl;
- ^
- -stdin-:<main>:1:8: Error: No such proc: cleast_agg
- select cleast_agg(q1,q2) from int8_tbl;
- ^
- <sql-statement>
- select cleast_agg(4.5,f1) from int4_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- select cleast_agg(4.5,f1) from int4_tbl;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- select cleast_agg(4.5,f1) from int4_tbl;
- ^
- -stdin-:<main>:1:8: Error: No such proc: cleast_agg
- select cleast_agg(4.5,f1) from int4_tbl;
- ^
- <sql-statement>
- select cleast_agg(variadic array[4.5,f1]) from int4_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported func_variadic
- select cleast_agg(variadic array[4.5,f1]) from int4_tbl;
- ^
- <sql-statement>
- select pg_typeof(cleast_agg(variadic array[4.5,f1])) from int4_tbl;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:18: Error: FuncCall: unsupported func_variadic
- select pg_typeof(cleast_agg(variadic array[4.5,f1])) from int4_tbl;
- ^
- <sql-statement>
- -- test aggregates with common transition functions share the same states
- begin work;
- </sql-statement>
- <sql-statement>
- create type avg_state as (total bigint, count bigint);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 314
- create type avg_state as (total bigint, count bigint);
- ^
- <sql-statement>
- create or replace function avg_transfn(state avg_state, n int) returns avg_state as
- $$
- declare new_state avg_state;
- begin
- raise notice 'avg_transfn called with %', n;
- if state is null then
- if n is not null then
- new_state.total := n;
- new_state.count := 1;
- return new_state;
- end if;
- return null;
- elsif n is not null then
- state.total := state.total + n;
- state.count := state.count + 1;
- return state;
- end if;
- return null;
- end
- $$ language plpgsql;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- create or replace function avg_transfn(state avg_state, n int) returns avg_state as
- ^
- <sql-statement>
- create function avg_finalfn(state avg_state) returns int4 as
- $$
- begin
- if state is null then
- return NULL;
- else
- return state.total / state.count;
- end if;
- end
- $$ language plpgsql;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- create function avg_finalfn(state avg_state) returns int4 as
- ^
- <sql-statement>
- create function sum_finalfn(state avg_state) returns int4 as
- $$
- begin
- if state is null then
- return NULL;
- else
- return state.total;
- end if;
- end
- $$ language plpgsql;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- create function sum_finalfn(state avg_state) returns int4 as
- ^
- <sql-statement>
- create aggregate my_avg(int4)
- (
- stype = avg_state,
- sfunc = avg_transfn,
- finalfunc = avg_finalfn
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_avg(int4)
- ^
- <sql-statement>
- create aggregate my_sum(int4)
- (
- stype = avg_state,
- sfunc = avg_transfn,
- finalfunc = sum_finalfn
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_sum(int4)
- ^
- <sql-statement>
- -- aggregate state should be shared as aggs are the same.
- select my_avg(one),my_avg(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- aggregate state should be shared as aggs are the same.
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- aggregate state should be shared as aggs are the same.
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_avg(one),my_avg(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_avg
- select my_avg(one),my_avg(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- aggregate state should be shared as aggs are the same.
- ^
- -stdin-:<main>:2:20: Error: At function: PgCall
- select my_avg(one),my_avg(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:20: Error: No such proc: my_avg
- select my_avg(one),my_avg(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- -- aggregate state should be shared as transfn is the same for both aggs.
- select my_avg(one),my_sum(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- aggregate state should be shared as transfn is the same for both aggs.
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- aggregate state should be shared as transfn is the same for both aggs.
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_avg(one),my_sum(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_avg
- select my_avg(one),my_sum(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- aggregate state should be shared as transfn is the same for both aggs.
- ^
- -stdin-:<main>:2:20: Error: At function: PgCall
- select my_avg(one),my_sum(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:20: Error: No such proc: my_sum
- select my_avg(one),my_sum(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- -- same as previous one, but with DISTINCT, which requires sorting the input.
- select my_avg(distinct one),my_sum(distinct one) from (values(1),(3),(1)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: agg_distinct must be set only for aggregate functions
- select my_avg(distinct one),my_sum(distinct one) from (values(1),(3),(1)) t(one);
- ^
- <sql-statement>
- -- shouldn't share states due to the distinctness not matching.
- select my_avg(distinct one),my_sum(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: agg_distinct must be set only for aggregate functions
- select my_avg(distinct one),my_sum(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- -- shouldn't share states due to the filter clause not matching.
- select my_avg(one) filter (where one > 1),my_sum(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_filter
- select my_avg(one) filter (where one > 1),my_sum(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- -- this should not share the state due to different input columns.
- select my_avg(one),my_sum(two) from (values(1,2),(3,4)) t(one,two);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- this should not share the state due to different input columns.
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- this should not share the state due to different input columns.
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_avg(one),my_sum(two) from (values(1,2),(3,4)) t(one,two);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_avg
- select my_avg(one),my_sum(two) from (values(1,2),(3,4)) t(one,two);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- this should not share the state due to different input columns.
- ^
- -stdin-:<main>:2:20: Error: At function: PgCall
- select my_avg(one),my_sum(two) from (values(1,2),(3,4)) t(one,two);
- ^
- -stdin-:<main>:2:20: Error: No such proc: my_sum
- select my_avg(one),my_sum(two) from (values(1,2),(3,4)) t(one,two);
- ^
- <sql-statement>
- -- exercise cases where OSAs share state
- select
- percentile_cont(0.5) within group (order by a),
- percentile_disc(0.5) within group (order by a)
- from (values(1::float8),(3),(5),(7)) t(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:3:3: Error: FuncCall: unsupported agg_order
- percentile_cont(0.5) within group (order by a),
- ^
- <sql-statement>
- select
- percentile_cont(0.25) within group (order by a),
- percentile_disc(0.5) within group (order by a)
- from (values(1::float8),(3),(5),(7)) t(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:3: Error: FuncCall: unsupported agg_order
- percentile_cont(0.25) within group (order by a),
- ^
- <sql-statement>
- -- these can't share state currently
- select
- rank(4) within group (order by a),
- dense_rank(4) within group (order by a)
- from (values(1),(3),(5),(7)) t(a);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:3:3: Error: FuncCall: unsupported agg_order
- rank(4) within group (order by a),
- ^
- <sql-statement>
- -- test that aggs with the same sfunc and initcond share the same agg state
- create aggregate my_sum_init(int4)
- (
- stype = avg_state,
- sfunc = avg_transfn,
- finalfunc = sum_finalfn,
- initcond = '(10,0)'
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- -- test that aggs with the same sfunc and initcond share the same agg state
- ^
- <sql-statement>
- create aggregate my_avg_init(int4)
- (
- stype = avg_state,
- sfunc = avg_transfn,
- finalfunc = avg_finalfn,
- initcond = '(10,0)'
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_avg_init(int4)
- ^
- <sql-statement>
- create aggregate my_avg_init2(int4)
- (
- stype = avg_state,
- sfunc = avg_transfn,
- finalfunc = avg_finalfn,
- initcond = '(4,0)'
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_avg_init2(int4)
- ^
- <sql-statement>
- -- state should be shared if INITCONDs are matching
- select my_sum_init(one),my_avg_init(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- state should be shared if INITCONDs are matching
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- state should be shared if INITCONDs are matching
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_sum_init(one),my_avg_init(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_sum_init
- select my_sum_init(one),my_avg_init(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- state should be shared if INITCONDs are matching
- ^
- -stdin-:<main>:2:25: Error: At function: PgCall
- select my_sum_init(one),my_avg_init(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:25: Error: No such proc: my_avg_init
- select my_sum_init(one),my_avg_init(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- -- Varying INITCONDs should cause the states not to be shared.
- select my_sum_init(one),my_avg_init2(one) from (values(1),(3)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- Varying INITCONDs should cause the states not to be shared.
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- Varying INITCONDs should cause the states not to be shared.
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_sum_init(one),my_avg_init2(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_sum_init
- select my_sum_init(one),my_avg_init2(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- Varying INITCONDs should cause the states not to be shared.
- ^
- -stdin-:<main>:2:25: Error: At function: PgCall
- select my_sum_init(one),my_avg_init2(one) from (values(1),(3)) t(one);
- ^
- -stdin-:<main>:2:25: Error: No such proc: my_avg_init2
- select my_sum_init(one),my_avg_init2(one) from (values(1),(3)) t(one);
- ^
- <sql-statement>
- rollback;
- </sql-statement>
- <sql-statement>
- -- test aggregate state sharing to ensure it works if one aggregate has a
- -- finalfn and the other one has none.
- begin work;
- </sql-statement>
- <sql-statement>
- create or replace function sum_transfn(state int4, n int4) returns int4 as
- $$
- declare new_state int4;
- begin
- raise notice 'sum_transfn called with %', n;
- if state is null then
- if n is not null then
- new_state := n;
- return new_state;
- end if;
- return null;
- elsif n is not null then
- state := state + n;
- return state;
- end if;
- return null;
- end
- $$ language plpgsql;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- create or replace function sum_transfn(state int4, n int4) returns int4 as
- ^
- <sql-statement>
- create function halfsum_finalfn(state int4) returns int4 as
- $$
- begin
- if state is null then
- return NULL;
- else
- return state / 2;
- end if;
- end
- $$ language plpgsql;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- create function halfsum_finalfn(state int4) returns int4 as
- ^
- <sql-statement>
- create aggregate my_sum(int4)
- (
- stype = int4,
- sfunc = sum_transfn
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_sum(int4)
- ^
- <sql-statement>
- create aggregate my_half_sum(int4)
- (
- stype = int4,
- sfunc = sum_transfn,
- finalfunc = halfsum_finalfn
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- create aggregate my_half_sum(int4)
- ^
- <sql-statement>
- -- Agg state should be shared even though my_sum has no finalfn
- select my_sum(one),my_half_sum(one) from (values(1),(2),(3),(4)) t(one);
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
- -- Agg state should be shared even though my_sum has no finalfn
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- Agg state should be shared even though my_sum has no finalfn
- ^
- -stdin-:<main>:2:8: Error: At function: PgCall
- select my_sum(one),my_half_sum(one) from (values(1),(2),(3),(4)) t(one);
- ^
- -stdin-:<main>:2:8: Error: No such proc: my_sum
- select my_sum(one),my_half_sum(one) from (values(1),(2),(3),(4)) t(one);
- ^
- -stdin-:<main>:1:1: Error: At function: PgResultItem
- -- Agg state should be shared even though my_sum has no finalfn
- ^
- -stdin-:<main>:2:20: Error: At function: PgCall
- select my_sum(one),my_half_sum(one) from (values(1),(2),(3),(4)) t(one);
- ^
- -stdin-:<main>:2:20: Error: No such proc: my_half_sum
- select my_sum(one),my_half_sum(one) from (values(1),(2),(3),(4)) t(one);
- ^
- <sql-statement>
- rollback;
- </sql-statement>
- <sql-statement>
- -- test that the aggregate transition logic correctly handles
- -- transition / combine functions returning NULL
- -- First test the case of a normal transition function returning NULL
- BEGIN;
- </sql-statement>
- <sql-statement>
- CREATE FUNCTION balkifnull(int8, int4)
- RETURNS int8
- STRICT
- LANGUAGE plpgsql AS $$
- BEGIN
- IF $1 IS NULL THEN
- RAISE 'erroneously called with NULL argument';
- END IF;
- RETURN NULL;
- END$$;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- CREATE FUNCTION balkifnull(int8, int4)
- ^
- <sql-statement>
- CREATE AGGREGATE balk(int4)
- (
- SFUNC = balkifnull(int8, int4),
- STYPE = int8,
- PARALLEL = SAFE,
- INITCOND = '0'
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- CREATE AGGREGATE balk(int4)
- ^
- <sql-statement>
- SELECT balk(hundred) FROM tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- SELECT balk(hundred) FROM tenk1;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- SELECT balk(hundred) FROM tenk1;
- ^
- -stdin-:<main>:1:8: Error: No such proc: balk
- SELECT balk(hundred) FROM tenk1;
- ^
- <sql-statement>
- ROLLBACK;
- </sql-statement>
- <sql-statement>
- -- Secondly test the case of a parallel aggregate combiner function
- -- returning NULL. For that use normal transition function, but a
- -- combiner function returning NULL.
- BEGIN;
- </sql-statement>
- <sql-statement>
- CREATE FUNCTION balkifnull(int8, int8)
- RETURNS int8
- PARALLEL SAFE
- STRICT
- LANGUAGE plpgsql AS $$
- BEGIN
- IF $1 IS NULL THEN
- RAISE 'erroneously called with NULL argument';
- END IF;
- RETURN NULL;
- END$$;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 261
- CREATE FUNCTION balkifnull(int8, int8)
- ^
- <sql-statement>
- CREATE AGGREGATE balk(int4)
- (
- SFUNC = int4_sum(int8, int4),
- STYPE = int8,
- COMBINEFUNC = balkifnull(int8, int8),
- PARALLEL = SAFE,
- INITCOND = '0'
- );
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 255
- CREATE AGGREGATE balk(int4)
- ^
- <sql-statement>
- -- force use of parallelism
- ALTER TABLE tenk1 set (parallel_workers = 4);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: alternative is not implemented yet : 245
- -- force use of parallelism
- ^
- <sql-statement>
- SET LOCAL parallel_setup_cost=0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: parallel_setup_cost
- SET LOCAL parallel_setup_cost=0;
- ^
- <sql-statement>
- SET LOCAL max_parallel_workers_per_gather=4;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: max_parallel_workers_per_gather
- SET LOCAL max_parallel_workers_per_gather=4;
- ^
- <sql-statement>
- EXPLAIN (COSTS OFF) SELECT balk(hundred) FROM tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- EXPLAIN (COSTS OFF) SELECT balk(hundred) FROM tenk1;
- ^
- <sql-statement>
- SELECT balk(hundred) FROM tenk1;
- </sql-statement>
- -stdin-:<main>: Error: Type annotation
- -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgResultItem
- SELECT balk(hundred) FROM tenk1;
- ^
- -stdin-:<main>:1:8: Error: At function: PgCall
- SELECT balk(hundred) FROM tenk1;
- ^
- -stdin-:<main>:1:8: Error: No such proc: balk
- SELECT balk(hundred) FROM tenk1;
- ^
- <sql-statement>
- ROLLBACK;
- </sql-statement>
- <sql-statement>
- -- test coverage for aggregate combine/serial/deserial functions
- BEGIN;
- </sql-statement>
- <sql-statement>
- SET parallel_setup_cost = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: parallel_setup_cost
- SET parallel_setup_cost = 0;
- ^
- <sql-statement>
- SET parallel_tuple_cost = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: parallel_tuple_cost
- SET parallel_tuple_cost = 0;
- ^
- <sql-statement>
- SET min_parallel_table_scan_size = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: min_parallel_table_scan_size
- SET min_parallel_table_scan_size = 0;
- ^
- <sql-statement>
- SET max_parallel_workers_per_gather = 4;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: max_parallel_workers_per_gather
- SET max_parallel_workers_per_gather = 4;
- ^
- <sql-statement>
- SET parallel_leader_participation = off;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: parallel_leader_participation
- SET parallel_leader_participation = off;
- ^
- <sql-statement>
- SET enable_indexonlyscan = off;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_indexonlyscan
- SET enable_indexonlyscan = off;
- ^
- <sql-statement>
- -- variance(int4) covers numeric_poly_combine
- -- sum(int8) covers int8_avg_combine
- -- regr_count(float8, float8) covers int8inc_float8_float8 and aggregates with > 1 arg
- EXPLAIN (COSTS OFF, VERBOSE)
- SELECT variance(unique1::int4), sum(unique1::int8), regr_count(unique1::float8, unique1::float8)
- FROM (SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1) u;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- variance(int4) covers numeric_poly_combine
- ^
- <sql-statement>
- SELECT variance(unique1::int4), sum(unique1::int8), regr_count(unique1::float8, unique1::float8)
- FROM (SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1) u;
- </sql-statement>
- <sql-statement>
- -- variance(int8) covers numeric_combine
- -- avg(numeric) covers numeric_avg_combine
- EXPLAIN (COSTS OFF, VERBOSE)
- SELECT variance(unique1::int8), avg(unique1::numeric)
- FROM (SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1) u;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- -- variance(int8) covers numeric_combine
- ^
- <sql-statement>
- SELECT variance(unique1::int8), avg(unique1::numeric)
- FROM (SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1
- UNION ALL SELECT * FROM tenk1) u;
- </sql-statement>
- <sql-statement>
- ROLLBACK;
- </sql-statement>
- <sql-statement>
- -- test coverage for dense_rank
- SELECT dense_rank(x) WITHIN GROUP (ORDER BY x) FROM (VALUES (1),(1),(2),(2),(3),(3)) v(x) GROUP BY (x) ORDER BY 1;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:2:8: Error: FuncCall: unsupported agg_order
- SELECT dense_rank(x) WITHIN GROUP (ORDER BY x) FROM (VALUES (1),(1),(2),(2),(3),(3)) v(x) GROUP BY (x) ORDER BY 1;
- ^
- <sql-statement>
- -- Ensure that the STRICT checks for aggregates does not take NULLness
- -- of ORDER BY columns into account. See bug report around
- -- 2a505161-2727-2473-7c46-591ed108ac52@email.cz
- SELECT min(x ORDER BY y) FROM (VALUES(1, NULL)) AS d(x,y);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:4:8: Error: FuncCall: unsupported agg_order
- SELECT min(x ORDER BY y) FROM (VALUES(1, NULL)) AS d(x,y);
- ^
- <sql-statement>
- SELECT min(x ORDER BY y) FROM (VALUES(1, 2)) AS d(x,y);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:8: Error: FuncCall: unsupported agg_order
- SELECT min(x ORDER BY y) FROM (VALUES(1, 2)) AS d(x,y);
- ^
- <sql-statement>
- -- check collation-sensitive matching between grouping expressions
- select v||'a', case v||'a' when 'aa' then 1 else 0 end, count(*)
- from unnest(array['a','b']) u(v)
- group by v||'a' order by 1;
- </sql-statement>
- <sql-statement>
- select v||'a', case when v||'a' = 'aa' then 1 else 0 end, count(*)
- from unnest(array['a','b']) u(v)
- group by v||'a' order by 1;
- </sql-statement>
- <sql-statement>
- -- Make sure that generation of HashAggregate for uniqification purposes
- -- does not lead to array overflow due to unexpected duplicate hash keys
- -- see CAFeeJoKKu0u+A_A9R9316djW-YW3-+Gtgvy3ju655qRHR3jtdA@mail.gmail.com
- set enable_memoize to off;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_memoize
- -- Make sure that generation of HashAggregate for uniqification purposes
- ^
- <sql-statement>
- explain (costs off)
- select 1 from tenk1
- where (hundred, thousand) in (select twothousand, twothousand from onek);
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- reset enable_memoize;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 4
- reset enable_memoize;
- ^
- <sql-statement>
- --
- -- Hash Aggregation Spill tests
- --
- set enable_sort=false;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_sort
- --
- ^
- <sql-statement>
- set work_mem='64kB';
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: work_mem
- set work_mem='64kB';
- ^
- <sql-statement>
- select unique1, count(*), sum(twothousand) from tenk1
- group by unique1
- having sum(fivethous) > 4975
- order by sum(twothousand);
- </sql-statement>
- <sql-statement>
- set work_mem to default;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
- set work_mem to default;
- ^
- <sql-statement>
- set enable_sort to default;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
- set enable_sort to default;
- ^
- <sql-statement>
- --
- -- Compare results between plans using sorting and plans using hash
- -- aggregation. Force spilling in both cases by setting work_mem low.
- --
- set work_mem='64kB';
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: work_mem
- --
- ^
- <sql-statement>
- create table agg_data_2k as
- select g from generate_series(0, 1999) g;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_data_2k as
- ^
- <sql-statement>
- analyze agg_data_2k;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 275
- analyze agg_data_2k;
- ^
- <sql-statement>
- create table agg_data_20k as
- select g from generate_series(0, 19999) g;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_data_20k as
- ^
- <sql-statement>
- analyze agg_data_20k;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 275
- analyze agg_data_20k;
- ^
- <sql-statement>
- -- Produce results with sorting.
- set enable_hashagg = false;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_hashagg
- -- Produce results with sorting.
- ^
- <sql-statement>
- set jit_above_cost = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: jit_above_cost
- set jit_above_cost = 0;
- ^
- <sql-statement>
- explain (costs off)
- select g%10000 as c1, sum(g::numeric) as c2, count(*) as c3
- from agg_data_20k group by g%10000;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- create table agg_group_1 as
- select g%10000 as c1, sum(g::numeric) as c2, count(*) as c3
- from agg_data_20k group by g%10000;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_group_1 as
- ^
- <sql-statement>
- create table agg_group_2 as
- select * from
- (values (100), (300), (500)) as r(a),
- lateral (
- select (g/2)::numeric as c1,
- array_agg(g::numeric) as c2,
- count(*) as c3
- from agg_data_2k
- where g < r.a
- group by g/2) as s;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_group_2 as
- ^
- <sql-statement>
- set jit_above_cost to default;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
- set jit_above_cost to default;
- ^
- <sql-statement>
- create table agg_group_3 as
- select (g/2)::numeric as c1, sum(7::int4) as c2, count(*) as c3
- from agg_data_2k group by g/2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_group_3 as
- ^
- <sql-statement>
- create table agg_group_4 as
- select (g/2)::numeric as c1, array_agg(g::numeric) as c2, count(*) as c3
- from agg_data_2k group by g/2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_group_4 as
- ^
- <sql-statement>
- -- Produce results with hash aggregation
- set enable_hashagg = true;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_hashagg
- -- Produce results with hash aggregation
- ^
- <sql-statement>
- set enable_sort = false;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_sort
- set enable_sort = false;
- ^
- <sql-statement>
- set jit_above_cost = 0;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: jit_above_cost
- set jit_above_cost = 0;
- ^
- <sql-statement>
- explain (costs off)
- select g%10000 as c1, sum(g::numeric) as c2, count(*) as c3
- from agg_data_20k group by g%10000;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
- explain (costs off)
- ^
- <sql-statement>
- create table agg_hash_1 as
- select g%10000 as c1, sum(g::numeric) as c2, count(*) as c3
- from agg_data_20k group by g%10000;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_hash_1 as
- ^
- <sql-statement>
- create table agg_hash_2 as
- select * from
- (values (100), (300), (500)) as r(a),
- lateral (
- select (g/2)::numeric as c1,
- array_agg(g::numeric) as c2,
- count(*) as c3
- from agg_data_2k
- where g < r.a
- group by g/2) as s;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_hash_2 as
- ^
- <sql-statement>
- set jit_above_cost to default;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
- set jit_above_cost to default;
- ^
- <sql-statement>
- create table agg_hash_3 as
- select (g/2)::numeric as c1, sum(7::int4) as c2, count(*) as c3
- from agg_data_2k group by g/2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_hash_3 as
- ^
- <sql-statement>
- create table agg_hash_4 as
- select (g/2)::numeric as c1, array_agg(g::numeric) as c2, count(*) as c3
- from agg_data_2k group by g/2;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
- create table agg_hash_4 as
- ^
- <sql-statement>
- set enable_sort = true;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_sort
- set enable_sort = true;
- ^
- <sql-statement>
- set work_mem to default;
- </sql-statement>
- -stdin-:<main>: Error: Parse Sql
- -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
- set work_mem to default;
- ^
- <sql-statement>
- -- Compare group aggregation results to hash aggregation results
- (select * from agg_hash_1 except select * from agg_group_1)
- union all
- (select * from agg_group_1 except select * from agg_hash_1);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_group_1
-
- <sql-statement>
- (select * from agg_hash_2 except select * from agg_group_2)
- union all
- (select * from agg_group_2 except select * from agg_hash_2);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_group_2
-
- <sql-statement>
- (select * from agg_hash_3 except select * from agg_group_3)
- union all
- (select * from agg_group_3 except select * from agg_hash_3);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_hash_3
-
- <sql-statement>
- (select * from agg_hash_4 except select * from agg_group_4)
- union all
- (select * from agg_group_4 except select * from agg_hash_4);
- </sql-statement>
- -stdin-:<main>: Fatal: Table metadata loading
- -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.agg_hash_4
-
- <sql-statement>
- drop table agg_group_1;
- </sql-statement>
- <sql-statement>
- drop table agg_group_2;
- </sql-statement>
- <sql-statement>
- drop table agg_group_3;
- </sql-statement>
- <sql-statement>
- drop table agg_group_4;
- </sql-statement>
- <sql-statement>
- drop table agg_hash_1;
- </sql-statement>
- <sql-statement>
- drop table agg_hash_2;
- </sql-statement>
- <sql-statement>
- drop table agg_hash_3;
- </sql-statement>
- <sql-statement>
- drop table agg_hash_4;
- </sql-statement>
|