Жеткізушілердің Көрсетілетін Функциялары Тұрақтылар Өрнекте қодануға болатын тұрақты мән. Операторлар Операторлар амалдағыштың екі жағында мәндерге не болып жатқандығын көрсетеді. Операторлар функцияларға ұқсас,олар деректер элементтерін басқарып нәтижелерді қайтарады. күні Ағымдағы жүйелік күнді кірістіреді. Күні-Уақыты Ағымдағы жүйелік күн және уақытты кірістіреді. уақыт белдеуі және уақыт Нөлдік уақыт пен уақыт белдеуін кірістіреді. уақыт белгісі уақыт белдеуімен Уақыт белдеуі бар уақыт белгісінің үлгісін кірістіреді. Бұрыс мәнді кірістіреді. аралық Нөлдік аралықты кірістіреді: 000 00:00:00.000. жылдық аралық Нөлдік жылдық аралықты кірістіреді: 0 жыл. айлық аралық Нөлдік айлық аралықты кірістіреді: 0 ай. аралық жылдан айға Нөлдік жылды ай аралығына кірістіреді: 0000-00 жылдан айға. күндік аралық Нөлдік күн аралығын кірістіреді: 0 күн. сағаттық аралық Нөлдік сағат аралығын кірістіреді: 0 сағат. минуттық аралық Нөлдік минут аралығын кірістіреді: 0 минут. секундты аралық Нөлдік секундты аралықты кірістіреді: 0 секунд. аралық күннен сағатқа Нөлдік күнді сағаттық аралыққа кірістіреді: 0 00 күннен сағатқа. аралық күннен минутқа Нөлдік күнді минуттық аралыққа кірістіреді: 0 00:00 күннен минутқа. аралық күннен секундқа Нөлдік күнді секундтық аралыққа кірістіреді: 0 00:00:00.000000000 күннен секундқа. аралық сағаттан минутқа Нөлдік сағатты минуттық аралыққа кірістіреді: 00:00 сағаттан минутқа. аралық сағаттан секундқа Нөлдік сағатты секундтық аралыққа кірістіреді:00:00:00.000000000 сағаттан секундқа. аралық минуттан секундқа Нөлдік минутты секундтық аралыққа кірістіреді:00:00.000000000 минуттан секундқа. Егер өрнек шарттары сәйкес келмесе "null" мәнін кірістіреді. Сан Жаңа сандық мәнмен ауыстырыла алатын 0 санын кірістіреді. тармақ Бос жолды екі жалғыз тырнақшаның арасына жол тере алатындай етіп кірістіреді. уақыт Ағымдағы уақыт жүйесін кірістіреді. true мәнді кірістіреді.
Өрнектің басталуын айқындайды. ( өрнек ) Өрнектің аяқталуын айқындайды. ( өрнек ) Екі сандық мәнді көбейтеді. мән1 * мән2 , Өрнек құрамдастарын бөледі. өрнек ( parameter1; parameter2 ) Екі сандық мәнді бөледі. мән1 / мән2 Байланыстырулар немесе біріктірулер, жолдар. string1 || string2 Екі сандық мәнді қосады. мән1 + мән2 Екі сандық мәнді алады немесе сандық мәнді болымсыздандырады. мән1 - мән2 немесе - мән "мән1" ұсынған мәндерді "мән2" мәндерімен салыстыр және "мән2" мәнінен кіші мәндерді шығар. мән1 < мән2 "мән1" ұсынған мәндерді "мән2" мәндерімен салыстыр және "мән2" мәнінен кіші немесе тең мәндерді шығар мән1 <= мән2 "мән1" ұсынған мәндерді "мән2" мәндерімен салыстыр және "мән2" мәніне тең емес мәндерді шығар. мән1 <> мән2 "мән1" ұсынған мәндерді "мән2" мәндерімен салыстыр және "мән2" мәніне тең мәндерді шығар. мән1 = мән2 "мән1" ұсынған мәндерді "мән2" мәндерімен салыстыр және "мән2" мәнінен үлкенірек мәндерді шығар. мән1 > мән2 Құрамдастарды литералды өрнек мүшесіне бөлу. [namespace].[dimension].[hierarchy].[level]->[L1] "мән1" ұсынған мәндерді "мән2" мәндерімен салыстырады және "мән2" мәндерінен үлкен немесе тең болғанша шығарады. мән1 >= мән2 Егер өрнектің екі жағындағы шарттар true болса, онда "true" қайтарады. аргумент1 and аргумент2 Сұраудағы топтасқан бағанаға негізделген нақтыланған аумақты айқындау үшін өрнек жиынтықтарымен жұмыс істейді. Аумақ мәтінге тәуелді. aggregate_function ( AUTO өрнегі ) Егер мән берілген ауқымға түссе анықтайды. between value1 and value2 өрнегі Мысалы:[Revenue] between 200 and 300 Нәтижесі: between 200 and 300 табыстар нәтижелерінің санын қайтарады. Revenue Between ---- ---- $332.06 false $230.55 true $107.94 false when, then, else және end мәндерімен жұмыс істейді. Case көрсетілген жағдайдың басын анықтап, ондағы when, then және else мәндерін анықтайды. case өрнек { when өрнек then өрнек } [ else өрнек ] end Егер "string1" "string2" мәнін қамтығанда анықтайды. Бұл синтаксис метатаңбалардың екеуін де қолдайды: Пайыз белгісі (%) нөл, бір немесе бірнеше таңбаларды және төменгі сызық белгісі (_) кез келген таңбаны білдіреді. Қосымша LITERAL кілт сөзі '%' және '_' қалай түсіндірілгенін көрсетеді. LITERAL кілт сөзі болған кезде, '%' және '_' метатаңбалар ретінде қарастырылмайды (3 және 5-мысалдарды қараңыз). Әйтпесе LITERAL кілт сөзі болмаған жағдайда, '%' және '_' метатаңбалар ретінде әрекет етеді (1, 2 және 4-мысалдарды қараңыз). жол1 құрамында [LITERAL] жол2 бар Мысал 1: [ӨНІМ_ЖЕЛІСІ] 'есік' қамтиды Нәтижесі: Сыртқы жабдықтар Мысал 2: [ӨНІМ_ЖЕЛІСІ] 'Golf%' қамтиды Нәтиже 2: Гольф жасақтары Мысал 3: [ӨНІМ_ЖЕЛІСІ] 'Golf%' тамгасы қамтиды Нәтиже 3: Golf% Мысал 4: [ӨНІМ_ЖЕЛІСІ] 'Ағымдағы_жыл%' қамтиды Мысал 4: Ағымдағы жыл бағасы, Ағымдағы жыл бағасы%, Ағымдағы_жыл бағасы%. Мысал 5: [ӨНІМ_ЖЕЛІСІ] 'Ағымдағы_жыл%' тамгасы бар Нәтиже 5: Current_Year%. Кілт сөз жиынтық функциясы мүшесінің бірінші дәлелі ретінде қолданыла алады. Бұл функция GO Деректер Қойма (сұрау) бумасындағы Мемлекет есебі үлгісі арқылы Жалпы табыста пайда болады. aggregate_function ( currentMeasure within set өрнегі ) current_date Дерекқордың ағымды күнін қайтарады. current_date lookup құрастырумен бірге жұмыс істейді. іздеу (....) (....) әдепкіні (....) Кілт сөз статистикалық өрнекте мәндердің ерекшеленген кірісітерін ғана еңгізу үшін қолданылады. Сонымен қатар бірегей функцияны қараңыз. distinct dataItem Мысалы: count ( distinct [OrderDetailQuantity] ) Нәтижесі: 1704 if немесе case құрастыруларымен бірге жұмыс істейді. Егер if жағдайы немесе өрнек жағдайы true болмаса, онда else өрнек қолданылады. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы 2005 есеп үлгісіне арналып Жоғарғы 10 Делдалдарында пайда болады. if ( жағдай ) then .... else ( өрнек ) ; немесе case .... else ( өрнек ) end case мәнінің соңында немесе құрастыру when көрсетеді. case .... соңы Егер "string1" мәні "string2" мәнімен аяқталса анықтайды. Бұл синтаксис метатаңбалардың екеуін де қолдайды: Пайыз белгісі (%) нөл, бір немесе бірнеше таңбаларды және төменгі сызық белгісі (_) кез келген таңбаны білдіреді. Қосымша LITERAL кілт сөзі '%' және '_' қалай түсіндірілгенін көрсетеді. LITERAL кілт сөзі болған кезде, '%' және '_' метатаңбалар ретінде қарастырылмайды (3 және 5-мысалдарды қараңыз). Әйтпесе LITERAL кілт сөзі болмаған жағдайда, '%' және '_' метатаңбалар ретінде әрекет етеді (1, 2 және 4-мысалдарды қараңыз). string1 [ӘРІПТІК] жолымен 2 аяқталады Мысал 1: [ӨНІМ_ЖЕЛІСІ] 'Жабдық' пен аяқталады Мысал 1: Лагерлік жабдықтар, Гольф жабдықтары Мысал 2: [ӨНІМ_ЖЕЛІСІ] ends with '%Equipment' Мысал 2: Golf Equipment, Camping Equipment Мысал 3: [ӨНІМ_ЖЕЛІСІ] ends with literal 'Equipment%' Нәтиже 3: Equipment% Мысал 4: [ӨНІМ_ЖЕЛІСІ] ends with '%Price' Нәтиже 4: Өнімнің бағасы, Ағымдағы_жыл бағасы Мысал 5: [ӨНІМ_ЖЕЛІСІ] ends with literal '%Price' Нәтиже 5: %Price "string1" – "string2" үлгісін жол үлгісіндегі таңбаларды қосымша "char" таңбасымен анықталады. жол1 ҮНАТУ жол2 [ ESCAPE char ] Мысалы: [ӨНІМДІК_ЖЕЛІ] like 'G%' Нәтиже: барлық өнім жолдары 'G' мәнімен іске қосылады. Мысалы: [ӨНІМДІК_ЖЕЛІ] like '%Ga%' escape 'a' Нәтиже: Барлық өнім жолдары 'G%' мәнімен аяқталады. Сұраудағы жинақтау аумағын анықтау үшін жиынтық өрнектерімен жұмыс істейді. aggregate_function ( өрнек for өрнек{ өрнек өрнек } ) Сұраудағы топтасқан бағананың жиынына нақтылай негізделген өрнек жиынтығының аумағын анықтау for бірге жұмыс істейді. Сөйлемге арналған эквивалент. aggregate_function ( өрнек for ANY өрнек { ; өрнек } ) Сұраудағы барлық көрсетілген топтасқан бағананың аумағын анықтау for өрнек жиынтықтарымен жұмыс істейді. Сөйлемді тағы да қараңыз. aggregate_function ( өрнек for ALL өрнек { ; өрнек }  Толық сұрау болатын аумақты орнату for өрнек жиынтықтарымен жұмыс істейді. Сөйлемді тағы да қараңыз. Бұл функция GO Деректер Қоймасы (анализдер) бумасында Тұтынушыларды Қайтару және Қанағаттанарлық есеп үлгісінде пайда болады. aggregate_function ( өрнек for report ) then және else құрастыруларымен жұмыс істейді. Егер жағдайды анықтайды; if жағдайы true болған жағдайда, содан кейін өрнегі қолданылады. Егер жағдайы true болмаған кезде, басқа жағдайы қолданылады. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы 2005 есеп үлгісіне арналып Жоғарғы 10 Делдалдарында пайда болады. if ( condition ) then ( өрнек ) else ( өрнек ) Егер "өрнек1" мәні өрнектердің берілген тізімінде болса анықтайды. өрнек1 in ( өрнек_list ) Егер "өрнек1" тұрақты мәндер мен ауқымдардың берілген тізімінде болса анықтайды. өрнек1 in_range { тұрақты : тұрақты [ ; тұрақты : тұрақты ] } Мысалы: [code] in_range { 5 } Нәтижесі: Бұл[code] мәніне эквивалент = 5. Мысалы: [code] in_range { 5: } Нәтижесі: Бұл [code] мәніне эквивалент >= 5. Мысалы: [code] in_range { :5 } Нәтижесі: Бұл [code]мәніне эквивалент <= 5. Мысалы: [code] in_range { 5:10 } Нәтижесі: Бұл  [code] мәніне эквивалент >= 5 and [code] <= 10 ). Мысалы: [code] in_range { :5,10,20: } Нәтижесі: Бұл ( [code] мәніне эквивалент <= 5 немесе [code] = 10 немесе [code] >= 20 ). Егер "мән" деректерде анықталмаған жағдайда анықтайды. is missing мәні Егер "мән" деректерде анықталмаған жағдайда анықтайды. is null мәні Егер "мән" деректерде анықталған жағдайда анықтайды. is not missing мәні Егер "мән" деректерде анықталған жағдайда анықтайды. is not null мәні "string1" – "string2" үлгісін жол үлгісіндегі таңбаларды қосымша "char" таңбасымен анықталады. Бұл синтаксис метатаңбалардың екеуін де қолдайды: Пайыз белгісі (%) нөл, бір немесе бірнеше таңбаларды және төменгі сызық белгісі (_) кез келген таңбаны білдіреді. жол1 ҮНАТУ жол2 [ ESCAPE char ] Мсал 1: [PRODUCT_LINE] like 'G%' Нәтиже 1: барлық өнім жолдары 'G' мәнімен іске қосылады. Мысал 2: [ӨНІМДІК_ЖЕЛІ] ұнату '%Ga%' болдырмау 'a' Нәтиже 2: Барлық өнім жолдары 'G%' мәнімен аяқталады. Мысал 3: [ӨНІМДІК_ЖЕЛІ] ұнату 'C_R_' Нәтиже 3: CARS немесе CARD атауы бар барлық өнімдер. Мысалы: lookup ( [Мемлекет]) in ( 'Канада'--> ( [Бағатізбе] * 0.60); 'Австралия'--> ( [Бағатізбе] * 0.80 ) ) default ( [Бағатізбе] ) Сіз көрсеткен мәнді табады және ауыстырады. Құрастыру жағдайын қолданған қолайлы. lookup ( name ) in ( value1 --> value2 ) default ( өрнек ) TRUE қайтарады егер "дәлел" false болса немесе FALSE қайтарады егер "дәлел" true болса. NOT дәлелі TRUE қайтарады егер "аргумент1" немесе "аргумент2" true болса. аргумент1 or аргумент2 Жиынтық сүзгісін қолданар алдында жиынтық есептеуішін орындайды. summary_function ([өрнек] prefilter) Мысал: total ( [Quantity] for report prefilter ) summaryFilter: total( [Quantity] for [ProductNo] ) > 50000 Нәтиже: жиынтық сүзгісі қолданылмайынша есептегі мөлшерді жинақтайды. PNo Total Total Total forPNo forRep forRep_Prefilter --------- -------- ---------- ------------------- 88 54928 298140 2215354 89 51126 298140 2215354 90 69996 298140 2215354 94 69004 298140 2215354 95 53086 298140 2215354 Сұрау шығарған жолдар санын санайды. Count () қолданыңыз. count ( ROWS ) Сұрау шығарған жолдар санын санайды. Count () қолданыңыз. ( ROWS  [ өрнек ]) санағы Егер "string1" мәні "string2" мәнімен басталса анықтайды. Бұл синтаксис метатаңбалардың екеуін де қолдайды: Пайыз белгісі (%) нөл, бір немесе бірнеше таңбаларды және төменгі сызық белгісі (_) кез келген таңбаны білдіреді. Қосымша LITERAL кілт сөзі '%' және '_' қалай түсіндірілгенін көрсетеді. LITERAL кілт сөзі болған кезде, '%' және '_' метатаңбалар ретінде қарастырылмайды (3 және 5-мысалдарды қараңыз). Әйтпесе LITERAL кілт сөзі болмаған жағдайда, '%' және '_' метатаңбалар ретінде әрекет етеді (1, 2 және 4-мысалдарды қараңыз). string1 [ӘРІПТІК] жол2 мен басталады Мысал 1: [ӨНІМ_ЖЕЛІСІ] 'Гольф' пен басталады Нәтиже 1: Гольф жабдықтары Мысал 2: [ӨНІМ_ЖЕЛІСІ] 'Сыртқы%' мен басталады Нәтиже 2: Сыртқы жабдық Мысал 3: [ӨНІМ_ЖЕЛІСІ] әріптік 'Гольф%' мен басталады Нәтиже 3: Golf% Мысал 4: [ӨНІМ_ЖЕЛІСІ] 'Ағымдағы_жыл%' мен басталады Нәтиже 4: Ағымдағы жыл бағасы, Ағымдағы жыл бағасы%, Ағымдағы_жыл бағасы% Мысал 5: [ӨНІМ_ЖЕЛІСІ] әріптік 'Ағымдағы_жыл%' мен басталады Нәтиже 5: Ағымдағы_жыл% if немесе case құрастыруларымен бірге жұмыс істейді. Егер жағдайы немесе қашан өрнегі true when болғаннан кейін өрнегі қолданылады. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы 2005 есеп үлгісіне арналып Жоғарғы 10 Делдалдарында пайда болады. if ( condition ) then..., немесе case өрнегі when өрнегі кейін .... соңы case құрастырушысымен жұмыс істейді. WHEN өрнегі true болған кезде орын алатын жағдайларды анықтауға болады. case [өрнек] when...end
Қорытындылар Бұл тізім байланысқан мәндер тобына арналған не жалғыз мән жиынтығын, не байланысқан мәндер тобының әр бір данасына арналған әр түрлі мән жиынтығын қайтаратын алдын ала анықталған функцияларды қамтиды. Өрнектердің статистикалық түріне негізделген сәйкес статистикалық функцияларды қолдана отырып есептелген мәнді қайтарады. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы Бюджеттің Нақты есеп үлгісінде пайда болады. aggregate ( өрнек [ auto ] ) aggregate ( өрнек for [ all|any ] өрнек { ; өрнек } ) aggregate ( өрнек for report ) Таңдалған деректер элементтерінің орташа мәнін кері қайтарады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. average ( [ distinct ] өрнек [ auto ] ) average ( [ distinct ] өрнек for [ all|any ] өрнек { ; өрнек } ) average ( [ distinct ] өрнек for report ) Мысалы: average ( Sales ) Нәтижесі: Барлық сатулар мәндерінің орташа мәнін қайтарады. Нөлдік мәндерді есептемегенде таңдалған дерек элементтерінің санын қайтарады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. Барлығы тек DQM күйінде қолдауға ие болады және ол өлшем кестенің дерек элементін екілік есептеуінің болжамын болдырмайды. count ( [ all | distinct ] өрнек [ auto ] ) count ( [ all | distinct ] өрнек for [ all|any ] өрнек { , өрнек } ) count ( [ all | distinct ] өрнек for report ) Мысалы: count ( Sales ) Нәтижесі: Саудадағы жазбалардың жалпы санын қайтарады. Таңдалған деректер элементтерінің ең үлкен мәнін кері қайтарады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. maximum ( [ distinct ] өрнек [ auto ] ) maximum ( [ distinct ] өрнек for [ all|any ] өрнек { ; өрнек } ) maximum ( [ distinct ] өрнек for report ) Мысалы: maximum ( Sales ) Нәтижесі: Барлық сату мәндерінің ең үлкен мәнін қайтарады. Таңдалған деректер элементтерінің қалыпты мәнін қайтарады. median ( өрнек [ auto ] ) median ( өрнек for [ all|any ] өрнек { ; өрнек } ) median ( өрнек for report ) Таңдалған деректер элементтерінің ең кіші мәнін кері қайтарады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. minimum ( [ distinct ] өрнек [ auto ] ) minimum ( [ distinct ] өрнек for [ all|any ] өрнек { ; өрнек } ) minimum ( [ distinct ] өрнек for report ) Мысалы: minimum ( Sales ) Нәтижесі: Барлық сату мәндерінің ең кіші мәнін қайтарады. Көрсетілген жолдар санынан жоғары мәндердің көрсетілген жиынтықтарына арналған жол арқылы жылжы малы орташа мәндерді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. moving-average ( сандық_өрнек ; сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) moving-average (  сандық_өрнек ; сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: moving-average ( Qty ; 3 ) Нәтижесі: Әр бір жолға ағымдағы жолдың және алдыңғы екі жолдың саны мен moving-average мәнін қайтарады. Qty Moving-Average (Qty, 3) ------ ------------------------------------ 200 200 700 450 400 433.3333 200 433.3333 200 266.6667 500 300.0000 Көрсетілген жолдар санынан көп жинақталған мәндер көрсетіліміне for жолдардың жылжымалы толық мәнін қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. moving-total ( сандық_өрнек ; сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) moving-total (  сандық_өрнек ; сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: moving-total ( Qty ; 3 ) Нәтижесі: Әр бір жолға ағымдағы жол мен алдыңғы екі жолдың саны мен жылжымалы толық мәнін қайтарады. Qty Moving-Total (Qty, 3) ------ -------------------------------- 200 200 700 900 400 1300 200 1300 200 800 500 900 Таңдалған деректер элементіне толық мәннің пайыздық көрсеткішін қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. Бұл функция Пайыздық Есептеудің (жыл бойынша) белсенді есеп үлгісінде пайда болады. percentage ( сандық_өрнек [ at өрнек  { ; өрнек } ] [ <for-option> ] [ prefilter ] ) percentage (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: percentage ( Sales 98 ) Нәтижесі: Әр бір Сатушы өкіліне берілген 1998 жылдың толық сату percentage көрсеткішін қайтарады. Employee Sales 98 Percentage --------- --------- ------------- Gibbons 60646 7.11% Flertjan 62523 7.35% Cornel 22396 2.63% Таңдалған деректер элементінен төмен немесе тең болатын таралымның пайыздық көрсеткішін жүздік шкалада көрсететін мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. percentile ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) percentile (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: percentile ( Sales 98 ) Нәтижесі: Әр бір жолға сол жолдың сандық мәнінен кем немесе тең болатын жолдың пайыздық көрсеткішін қайтарады. Qty Percentile (Qty) ------ ----------------- 800 1 700 0.875 600 0.75 500 0.625 400 0.5 400 0.5 200 0.25 200 0.25 Сіз көрстекен ранг арқылы мәннің рангын қайтарады. 1 (жоғарыдан) 100 (төменге) дейінгі рангтың ауқымын көрсету үшін бүтін сандарды қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. quantile ( сандық_өрнек ; сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) quantile (  сандық_өрнек ; сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: quantile ( Qty ; 4 ) Нәтижесі: Санды, Сандық мәннің ранг көрсеткішін және 4 quantile топқа (квартильді) бөлінген сан мәнін қайтарады. Qty Rank Quantile (Qty, 4) ------ ------- --------------- 800 1 1 700 2 1 600 3 2 500 4 2 400 5 3 400 5 3 200 7 4 200 7 4 Мәндердің тобына қатысты 1 (жоғарғы) мен 4 (төменгі) аралығындағы бүтін сандар сияқты, ұсынылған мәннің рангын қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. quartile ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) quartile (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: quartile ( Qty ) Нәтижесі: 1 (ең жоғарғыдан) 4 (ең төменгіге) дейін бүтін сандар ретінде берілген мәндер санының аумағы мен квартилін қайтарады. Qty Quartile (Qty) ------ --------------------- 450 1 400 1 350 2 300 2 250 3 200 3 150 4 100 4 Таңдалған дерек элементтерінің мән рангысын қайтарады. Сұрыптау реті қалау бойынша; кему реті (DESC) әдепкі бойынша қолданылады. Екі немесе одан да көп жолдар жіңішке болса, онда рангты мәндер бірізділігінде бос орын бар (сонымен қатар Олимпиялық ранг деп аталады). "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. Нөлді мәндер соңынан реттелген. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы 2005 есеп үлгісіне арналып Жоғарғы 10 Делдалдарында пайда болады. дәреже ( өрнек [ ASC|DESC ] { ; өрнек [ ASC|DESC ] } [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) rank ( [ distinct ] өрнек [ ASC|DESC ] { ; өрнек [ ASC|DESC ] } [ <for-option>] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: дәреже ( Sales 98 ) Нәтижесі: Әр жол үшін, әр Сатушы өкіліне берілген 1998 жылдың толық сату пайыздық көрсеткішін қайтарады. Кейбір сандар жолдар арасында үзгіш пайда болғанда өткізіп жіберілді. Employee Sales 98 Rank --------- --------- ------------ Gibbons 60000 1 Flertjan 50000 2 Cornel 50000 2 Smith 48000 4 Мәндер жиынтығына арнап жолдар (ағымдағы жолды қосқанда) арқылы орындалудағы орташа мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-average ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-average (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-average ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жолдың және алдыңғы екі жолдың аумағын және орындалудағы орташа мәнін қайтарады. Name Qty Avg Running-Average for name ------- ------ ------ ----------------------- Smith 7 5 7 Smith 3 5 5 Smith 6 5 5.33 Smith 4 5 5 Wong 3 4 3 Wong 5 4 4 Жиынтық мәндеріне арналған жол бойынша (ағымдағы жолды қосқанда) саналған орындалудағы мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-count ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-count (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-count ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жолдың орнының орындалу санақ мәнін және ауқымын қайтарады. Name Qty Count Running-Count for name ------- ------ --------- ------------------------ Smith 7 4 1 Smith 3 4 2 Smith 6 4 3 Smith 4 4 4 Wong 3 3 1 Wong 5 3 2 Мәндердің жинағына арналған (ағымдағы жолды қосқанда) ағымдағы жол мен алдыңғы жол мәні арасындағы айырмашылық ретінде есептелген жолдардың орындалудағы айырмашылығын қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-difference ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-difference (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-difference ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жол мен алдыңғы жолға арналған мәндер арасындағы орындалу айырмашылығы мен ауқымын қайтарады. Name Qty Running-Difference for name ------- ------ --------------------------- Smith 7 NULL Smith 3 -4 Smith 6 3 Smith 4 -2 Wong 3 -1 Wong 5 2 Мәндер жинағына арналған жол (ағымдағы жолды қосқанда) бойынша орындалу максимум мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-maximum (  сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-maximum (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-maximum ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жол мен алдыңғы жолдың running-maximum мәні мен ауқымын қайтарады. Name Qty Max Running-Maximum (Qty) for name ------- ------ ------ ------------------------- Smith 2 7 2 Smith 3 7 3 Smith 6 7 6 Smith 7 7 7 Wong 3 5 3 Wong 5 5 5 Мәндер жинағына арналған жол (ағымдағы жолды қосқанда) бойынша орындалу минимум мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-minimum ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-minimum (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-minimum ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жол мен алдыңғы жолдың орындалудағы минимум мәні мен ауқымын қайтарады. Name Qty Min Running-Minimum (Qty) for name ------- ----- ------ -------------------------- Smith 7 2 7 Smith 3 2 3 Smith 6 2 3 Smith 2 2 2 Wong 4 3 4 Wong 5 3 4 Мәндер жинағына арналған жол (ағымдағы жолды қосқанда) бойынша орындалудағы толық мәнді қайтарады. "<for-option>" функцияның ауқымын анықтайды. "at" опциясы жинақтаудың дәрежесін анықтап және байланысқан деректер көзінің мәтіндерінде ғана қолданыла алады. running-total ( сандық_өрнек [ at өрнек { ; өрнек } ] [ <for-option> ] [ prefilter ] ) running-total (  сандық_өрнек [ <for-option> ] [ prefilter ] ) <for-option> ::= for өрнек { ; өрнек }|for report|auto Мысалы: running-total ( Qty ) Нәтижесі: Әр бір жолға ағымдағы жол мен алдыңғы жолдың орындалудағы ортақ мәні мен ауқымын қайтарады. Name Qty Total Running-Total (Qty) for name ------- ------ -------- ------------------------- Smith 2 18 2 Smith 3 18 5 Smith 6 18 11 Smith 7 18 18 Wong 3 12 3 Wong 5 12 8 Таңдалған деректер элементтерінің стандартты ауытқу мәндерін қайтарады. standard-deviation (  өрнек [ auto ] ) standard-deviation (  өрнек for [ all|any ] өрнек { ; өрнек } ) standard-deviation (  өрнек for report ) Мысалы: standard-deviation ( ProductCost ) Нәтижесі: Өнім бағасы мен орташа өнім бағасы арасындағы ауытқуларды көрсететін мәнді қайтарады. Халық айырмашылығының шаршы түбір мәнін қайтарады және халықтың стандартты ауытқу мәнін есептейді. standard-deviation-pop (  өрнек [ auto ] ) standard-deviation-pop (  өрнек for [ all|any ] өрнек { ; өрнек } ) standard-deviation-pop (  өрнек for report ) Мысалы: standard-deviation-pop ( ProductCost ) Нәтижесі: Халық айырмашылығының шаршы түбірінің мәнін қайтарады. Таңдамалы стандартты ауытқу мәнін есептейді және халық айырмашылығының шаршы түбірін қайтарады. standard-deviation-samp (  өрнек [ auto ] ) standard-deviation-samp (  өрнек for [ all|any ] өрнек { ; өрнек } ) standard-deviation-samp (  өрнек for report ) Мысалы: standard-deviation-samp ( ProductCost ) Нәтижесі: Таңдамалы айырмашылықтың шаршы түбірінің мәнін қайтарады. Мәндер тобына байланысты Жоғарғы, Орташа, немесе Төмеңгі сияқты мәндер түрін қайтарады. tertile (  өрнек [ auto ] ) tertile (  өрнек for [ all|any ] өрнек { ; өрнек } ) tertile (  өрнек for report ) Мысалы: tertile ( Qty ) Нәтижесі: терцильдерге бөлінген мәндер ауқымы ретіндегі квантильдерді, ауқымдарды және терцильдерге бөлінген мәндер ауқымын қайтарады. Qty Quantile (Qty, 3) Tertile (Qty) ------ ------------------------ ------------------ 800 1 H 700 1 H 500 2 M 400 2 M 200 3 L 200 3 L Таңдалған деректер элементтерінің толық мәнін қайтарады. Distinct бұл өнімнің бұрыңғы нұсқаларына сәйкес болатын баламалы өрнек. Бұл функция GO Деректер Қоймасы (анализдер) бумасындағы Бюджеттің Нақты есеп үлгісінде пайда болады. total ( [ distinct ] өрнек [ auto ] ) total ( [ distinct ] өрнек for [ all|any ] өрнек { ; өрнек } ) total ( [ distinct ] өрнек for report ) Мысалы: total ( Sales ) Нәтижесі: Барлық Сатылым мәндерінің толық мәнін қайтарады. Статистикалық функциялар Осы тізімде статистикалық сипаттағы алдын ала анықталған жалпы функциялар бар. Таңдалған деректер элементтерінің айырмашылығын қайтарады. variance (  өрнек [ auto ] ) variance (  өрнек for [ all|any ] өрнек { ; өрнек } ) variance (  өрнек for report ) Мысалы: variance ( Product Cost ) Нәтижесі: Өнім бағасының орташа өнім бағасынан қаншалықты өзгеше екенін көрсететін мәнді қайтарады. Осы жинақтардағы нөлдерді алып тастағаннан кейін жинақталған сандардың халық айырмашылығын қайтарады. variance-pop (  өрнек [ auto ] ) variance-pop (  өрнек for [ all|any ] өрнек { ; өрнек } ) variance-pop (  өрнек for report ) Мысалы: variance-pop ( Qty ) Нәтижесі: Әр бір жолға осы жинақтағы нөлдерді алып тастағаннан кейін сандар жинағының жиынтық айырмашылығын қайтарады. Осы жиындағы нөлдерді алып тастағаннан кейін сандар жиынының таңдамалы айырмашылығын қайтарады. variance-samp (  өрнек [ auto ] ) variance-samp (  өрнек for [ all|any ] өрнек { ; өрнек } ) variance-samp (  өрнек for report ) Мысалы: variance-samp ( Qty ) Нәтижесі: Әр қатар үшін, осы жиындағы нөлдерді алып тастағаннан кейін сандар жиынының таңдамалы айырмашылығын қайтарады. corr ( сандық_өрнек1 ;  сандық_өрнек2  [ auto ] ) corr ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) corr ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Жұп сандар жиынының өзара қатынас коэффициентін қайтарады. Бұл төмендегідей болып есептеледі: COVAR_POP(сандық_өрнек1; сандық_өрнек2) / (STDDEV_POP(сандық_өрнек1) * STDDEV_POP(сандық_өрнек2)) Мысалы: corr ( Cost ;  Margin  for report) Нәтижесі: Баға және Шет арасындағы өзара қатынас коэффициенті. Cost Margin corr (Cost, Margin for report) ------- ---------- ----------------------------------------- 4 0.33 0.0872648 5 0.28 0.0872648 9.22 0.23 0.0872648 15.93 0.28 0.0872648 34.97 0.3 0.0872648 covariance-pop ( сандық_өрнек1 ;  сандық_өрнек2 ) covariance-pop ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек{ ; өрнек } ) covariance-pop ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Жұп сандар жиынының бірлескен түрлендірме попуяциясын қайтарады. Мысалы: covariance-pop ( Cost ;  Margin  for report) Нәтижесі: Баға және Шет арасындағы бас жиынтық дисперсиясы. Cost Margin covariance-pop (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.032384 5 0.28 0.032384 9.22 0.23 0.032384 15.93 0.28 0.032384 34.97 0.3 0.032384 covariance-samp ( сандық_өрнек1 ;  сандық_өрнек2 ) covariance-samp ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) covariance-samp ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Жұп сандар жиынының таңдамалы бірлескен түрлендірмесін қайтарады. Мысалы: covariance-samp ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шет арасындағы ковариация үлгісі. Cost Margin covariance-samp (Cost, Margin for report) ------- ---------- ------------------------------------------------------------ 4 0.33 0.04048 5 0.28 0.04048 9.22 0.23 0.04048 15.93 0.28 0.04048 34.97 0.3 0.04048 regression-average-x ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-average-x ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек{ ; өрнек } ) regression-average-x ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолының(сандық_өрнек2) тәуелсіз орташа айнымалы мәнін қайтарады. Мысалы: regression-average-x ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім жол бойынша шет бағасы. Cost Margin regression-average-x (Cost, Margin for report) ------- ---------- ----------------------------------------------------------------- 4 0.33 0.284 5 0.28 0.284 9.22 0.23 0.284 15.93 0.28 0.284 34.97 0.3 0.284 regression-average-y ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-average-y ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-average-y ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолының(сандық_өрнек1)тәуелді орташа айнымалы мәнін қайтарады. Мысалы: regression-average-y ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім жол бойынша Бағаның орташа мәні. Cost Margin regression-average-y (Cost, Margin for report) ------- ---------- ----------------------------------------------------------------- 4 0.33 13.824 5 0.28 13.824 9.22 0.23 13.824 15.93 0.28 13.824 34.97 0.3 13.824 regression-count ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-count ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-count ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолына қатысты пайдаланылған нөл емес сандардың осы санын қайтарады. Мысалы: regression-count ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім бойынша кірістіретін нөлдік емес сан. Cost Margin regression-count (Cost, Margin for report) ------- ---------- ----------------------------------------------------------- 4 0.33 5 5 0.28 5 9.22 0.23 5 15.93 0.28 5 34.97 0.3 5 regression-intercept ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-intercept ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-intercept ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолының y-intercept қайтарады. Бұл төмендегідей болып есептеледі: AVG(сандық_өрнек1) - REGR_SLOPE(сандық_өрнек1; сандық_өрнек2) * AVG(сандық_өрнек2) Мысалы: regression-intercept ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім жолының y-intercept нәтижесі. Cost Margin regression-intercept (Cost, Margin for report) ------- ---------- ---------------------------------------------------------------- 4 0.33 5.18015038 5 0.28 5.18015038 9.22 0.23 5.18015038 15.93 0.28 5.18015038 34.97 0.3 5.18015038 regression-r2 ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-r2 ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-r2 ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолын анықтау коэффициентін (сондай-ақ, "R-шаршы" немесе "келісім шарты" ретінде де танымал) қайтарады. Бұл төмендегі шарттарға негізделіп есептеледі: IF VAR_POP(сандық_өрнек2) = 0 THEN NULL IF VAR_POP(сандық_өрнек1) = 0 AND VAR_POP(сандық_өрнек2) <> 0 THEN 1 IF VAR_POP(сандық_өрнек1) > 0 and VAR_POP(сандық_өрнек2) <> 0 THEN POWER(CORR (сандық_өрнек1; сандық_өрнек2)) Мысалы: regression-r2 ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім жолының өлшем коэффициенті. Cost Margin regression-r2 (Cost, Margin for report) ------- ---------- ------------------------------------------------------ 4 0.33 0.00761514 5 0.28 0.00761514 9.22 0.23 0.00761514 15.93 0.28 0.00761514 34.97 0.3 0.00761514 regression-slope ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-slope ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-slope ( сандық_өрнек1 ;  сандық_өрнек2 for report ) Регрессия жолының еңісін қайтарады. Бұл төмендегідей есептеледі: COVAR_POP(сандық_өрнек1;сандық_өрнек2) / VAR_POP(сандық_өрнек2) Мысалы: regression-slope ( Cost ;  Margin ) Нәтижесі: Баға мен Шетке арналған түсім жолының еңісі. Cost Margin regression-slope (Cost, Margin for report) ------- ---------- ----------------------------------------------------------- 4 0.33 30.43609023 5 0.28 30.43609023 9.22 0.23 30.43609023 15.93 0.28 30.43609023 34.97 0.3 30.43609023 regression-sxx ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-sxx ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-sxx ( сандық_өрнек1 ;  сандық_өрнек2 for report ) NULL мәнді жұптарды жойғаннан кейін келесі есепті қайтарады: REGR_COUNT(сандық_өрнек1; сандық_өрнек2) * VAR_POP(сандық_өрнек2) Мысалы: regression-sxx ( Cost ;  Margin  for report) Result: Баға мен Шетке арналған түсім бойынша sxx есебі. Cost Margin regression-sxx (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.00532 5 0.28 0.00532 9.22 0.23 0.00532 15.93 0.28 0.00532 34.97 0.3 0.00532 regression-sxy ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-sxy ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-sxy ( сандық_өрнек1 ;  сандық_өрнек2 for report ) NULL мәнді жұптарды жойғаннан кейін келесі есепті қайтарады: REGR_COUNT(сандық_өрнек1; сандық_өрнек2) * COVAR_POP(сандық_өрнек1; сандық_өрнек2) Мысалы: regression-sxy ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім бойынша sxx есебі. Cost Margin regression-sxy (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.16192 5 0.28 0.16192 9.22 0.23 0.16192 15.93 0.28 0.16192 34.97 0.3 0.16192 regression-syy ( сандық_өрнек1 ;  сандық_өрнек2 ) regression-syy ( сандық_өрнек1 ;  сандық_өрнек2 for [ all|any ] өрнек { ; өрнек } ) regression-syy ( сандық_өрнек1 ;  сандық_өрнек2 for report ) NULL мәнді жұптарды жойғаннан кейін келесі есепті қайтарады: REGR_COUNT(сандық_өрнек1; сандық_өрнек2) * VAR_POP(сандық_өрнек1) Мысалы: regression-syy ( Cost ;  Margin  for report) Нәтижесі: Баға мен Шетке арналған түсім бойынша syy есебі. Cost Margin regression-syy (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 647.15932 5 0.28 647.15932 9.22 0.23 647.15932 15.93 0.28 647.15932 34.97 0.3 647.15932 Мүше қорытындылары Бұл тізім байланысқан мүшелер жиынына арналған не жалғыз мән жиынтығын, не мүшелер жиынындағы әр мүшегеарналған әр түрлі мән жиынтығын қайтаратын алдын ала анықталған функцияларды қамтиды.
Қате Бөлектелген таңбалауыштардағы өрнектерде қате бар.
Құрылымдар Бұл тізім өрнек құруда қолданылатын құрылымдар мен үлгілерді қамтиды. Үлгілер бірнеше функцияларды бір топқа жинайды. Мысалы, case іздеу үлгісі, қайда, басқа, және соңғы функцияларды қамтиды. search case Бұл құрылым - CASE, WHEN, ELSE және END функциялары сияқты жағдайларды іздеу үлгісі. CASE WHEN [Мемлекет] = 'Канада' THEN ([Баға Тізімі] * 0.60) WHEN [Мемлекет коды] > 100 THEN [Баға Тізімі] * 0.80 О ELSE [Баға Тізімі] END simple case Бұл құрылым - CASE, WHEN, ELSE және END функциялары сияқты қарапайым іс үлгісі. CASE [Мемлекет] = 'Канада' THEN ([Баға Тізімі] * 0.60) WHEN 'Мемлекет коды' > 'Австралия' THEN [Баға Тізімі] * 0.80 О ELSE [Баға Тізімі] END if then else Бұл құрылым if...then...else нұсқаларының үлгісі болып табылады. Бұл құрылым GO Деректер Қоймасы (анализдер) бумасындағы 2005 есеп үлгісіне арналып Жоғарғы 10 Делдалдарында пайда болады. IF ([Мемлекет] = 'Канада') THEN ([Баға Тізімі] * 0.60) ELSE [Баға Тізімі]) in_range Бұл in_range өрнекке арналған үлгі. [код] IN_RANGE{ :30 ; 40, 50, 999: } Мысалы: [code] IN_RANGE { 5 } Нәтижесі: Бұл[code] мәніне эквивалент = 5. Мысалы: [code] IN_RANGE { 5: } Нәтижесі: Бұл [code] мәніне эквивалент >= 5. Мысалы: [code] IN_RANGE { :5 } Нәтижесі: Бұл [code]мәніне эквивалент <= 5. Мысалы: [code] IN_RANGE { 5:10 } Нәтижесі: Бұл  [code] мәніне эквивалент >= 5 and [code] <= 10 ). Мысалы: [code] IN_RANGE { :5,10,20: } Нәтижесі: Бұл ( [code] мәніне эквивалент <= 5 немесе [code] = 10 немесе [code] >= 20 ).
Кезең бекітіледі Бұл тізім кезең өрнектерін салыстыру үшін қолданылатын предикаттарды қамтиды. құрамында бар "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2"; "true" мәні бірінші кезеңде күнуақыты мәнін қайтаратын болса, немесе барлық мәндерді қамтитын екінші кезең болса. кезең_өрнегі1 мәні ( кезең_өрнегі2 | күн-уақыт_өрнегі ) мәнін қамтиды ( 1989-11-01, 1991-05-19 ) кезеңі( 1991-05-19, 1991-06-04 ) кезеңін қамтиды Нәтиже: қате ( 1989-11-01, 1991-05-19 ) кезеңі ( 1990-05-19, 1991-04-04 ) кезеңін қамтиды Нәтиже: true ( 1989-11-01, 1991-05-19 ) кезеңі 1991-04-04 мәнін қамтиды Нәтиже: true тең "true" мәнін қайтарады, егер "кезең_өрнегі1" және "кезең_өрнегі2" мәндері бірдей кезең басталуы мен кезеңнің аяқталу мәндерін қамтитын болса. кезең_өрнегі1 мәні кезең_өрнегі2 мәніне тең ( 1989-11-01, 1991-05-19 ) кезеңі ( 1989-11-01, 1991-05-19 ) кезеңіне тең Нәтиже: true жылдам алдына шығу "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2"; мәнін қамтитын болса, ол не бірінші кезеңнің екінші кезеңде қамтылатын күнуақыты мәнін немесе барлық мәндерді қамтитын бірінші кезең болса. кезең_өрнегі1 мәні кезең_өрнегі2 мәнінің алдына жылдам шығады ( 1989-11-01, 1991-05-19 ) кезеңі ( 1991-05-19, 1991-06-04 ) кезеңінің алдына шығады Нәтиже: true ( 1989-11-01, 1991-05-18 ) кезеңі ( 1991-05-19, 1991-06-04 ) кезеңінің алдына ашығады Нәтиже: қате жылдам сәтті болады "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2"; мәнінен жылдамырақ сәтті болатын болса, екінші кезеңнің соңғы мәні бірінші кезеңнің іске қосу мәні тең болады. кезең_өрнегі1 мәні кезең_өрнегі2 мәнінен жылдам сәтті болады ( 1991-05-19, 1994-01-10 ) кезеңі ( 1991-01-19, 1991-05-19 ) кезеңінен жылдам сәтті болады Нәтиже: true ( 1991-05-19, 1994-01-10 ) кезеңі ( 1991-01-20, 1991-05-18 ) кезеңінен жылдам сәтті болады Нәтиже: қате қабаттастырулар "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2" мәніне қабаттасатын болса; ол кем дегенде жалпыға бір мәнді ие етеді. кезең_өрнегі1 мәні кезең_өрнегі2 мәніне қабаттасады ( 1991-05-19, 1994-01-10 ) кезеңі ( 1993-01-19, 1995-05-19 ) кезеңіне қабаттасады Нәтиже: true алдына шығады "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2" мәнінен алдына шықса; ол дегеніміз, бірінші кезеңдегі барлық мәндер екінші кезеңнің іске қосу мәнінен кем немесе тең болады. кезең_өрнегі1 мәні кезең_өрнегі2 мәнінің алдына шығады ( 1989-11-01, 1991-05-19 ) кезеңі ( 1991-05-19, 1991-06-04 ) кезеңінің алдына шығады Нәтиже: true ( 1989-11-01, 1991-05-18 ) кезеңі ( 1991-05-19, 1991-06-04 ) кезеңінің алдына шығады Нәтиже: true сәтті болады "true" мәнін қайтарады, егер "кезең_өрнегі1" мәні "кезең_өрнегі2"; мәнінен жылдамырақ сәтті болатын болса, бірінші кезеңде қамтылатын барлық мәндер екінші кезеңнің соңғы мәнінен үлкен немесе тең болады. кезең_өрнегі1 мәні кезең_өрнегі2 мәнінен жылдамырақ сәтті болады ( 1991-05-19, 1994-01-10 ) кезеңі ( 1991-01-19, 1991-05-19 ) кезеңінен сәтті болады Нәтиже: true ( 1991-05-20, 1994-01-10 ) кезеңі ( 1991-01-20, 1991-05-19 ) кезеңінен сәтті болады Нәтиже: true
Іскерлік Күн/Уақыт Функциялары Бұл тізім күн және уақыт есептеулерін жүргізуге арналған іскерлік функцияларды қамтиды. _add_seconds ( уақыт_өрнегі, бүтін_сан_өрнегі ) "уақыт_өрнегі" қосылған "бүтін_сан_өрнегі" нәтижесі болатын "уақыт_өрнегі" форматына тәуелді уақытты немесе күн уақытын қайтарады. Мысалы: _add_seconds ( 13:04:59 , 1 ) Нәтижесі: 13:05:00 Мысалы: _add_seconds ( 2002-04-30 12:10:10.000, 1 ) Нәтижесі: 2002-04-30 12:10:11.000 Мысалы: _add_seconds ( 2002-04-30 00:00:00.000, 1/100 ) Екінші дәлелдің толық сан емес екендігін ескеріңіз. Бұл кейбір дерекқор технологияларымен және уақыт бөлігінің артуымен қолдау табады. Нәтижесі: 2002-04-30 00:00:00.010 _add_minutes ( уақыт_өрнегі, бүтін_сан_өрнегі ) "бүтін_сан_өрнегі" минутты "уақыт_өрнегі" қосқанда нәтижесі болатын "уақыт_өрнегі" форматына тәуелді уақыт немесе күн уақытын қайтарады. Мысалы: _add_minutes ( 13:59:00 , 1 ) Нәтижесі: 14:00:00 Мысалы: _add_minutes ( 2002-04-30 12:59:10.000, 1 ) Нәтижесі: 2002-04-30 13:00:10.000 Мысалы: _add_minutes ( 2002-04-30 00:00:00.000, 1/60 ) Екінші дәлелдің толық сан емес екендігін ескеріңіз. Бұл кейбір дерекқор технологияларымен және уақыт бөлігінің артуымен қолдау табады. Нәтижесі: 2002-04-30 00:00:01.000 _add_hours ( уақыт_өрнегі, бүтін_сан_өрнегі ) "уақыт_өрнегі" өрнегінің пішіміне байланысты уақытты немесе күндізгі уақытты қайтарады, ол "бүтін_сан_өрнегі" сағатын "уақыт_өрнегі" өргеніне қосқандағы нәтижесі болады. Мысалы: _add_hours ( 13:59:00 , 1 ) Нәтижесі: 14:59:00 Мысалы: _add_hours ( 2002-04-30 12:10:10.000, 1 ) Нәтижесі: 2002-04-30 13:10:10.000, Мысалы: _add_hours ( 2002-04-30 00:00:00.000, 1/60 ) Екінші дәлелдің толық сан емес екендігін ескеріңіз. Бұл кейбір дерекқор технологияларымен және уақыт бөлігінің артуымен қолдау табады. Нәтижесі: 2002-04-30 00:01:00.000 _add_days ( күн_өрнегі; бүтін_сан_өрнегі ) "күн_өрнегіне" қосылған "бүтін сан_өрнегінің" нәтижесі болатын "күн_өрнегі" форматына тәуелді күнді немесе күн\уақытын қайтарады. Мысалы: _add_days ( 2002-04-30 ; 1 ) Нәтижесі: 2002-05-01 Мысалы: _add_days ( 2002-04-30 12:10:10.000; 1 ) Нәтижесі: 2002-05-01 12:10:10.000 Мысалы: _add_days ( 2002-04-30 00:00:00.000; 1/24 ) Екінші дәлелдің толық сан емес екендігін ескеріңіз. Бұл кейбір дерекқор технологияларымен және уақыт бөлігінің артуымен қолдау табады. Нәтижесі: 2002-04-30 01:00:00.000 _add_months ( күн_өрнегі; бүтін_сан_өрнегі ) "бүтін_сан_өрнегі" айларын "күн_өрнегі" өрнегіне қосыңыз. Ай құрамындағы күнге қарағанда нәтижедегі айда бірнеше күн болса, онда нәтижедегі айдың соңғы күні қайтарылады. Басқа барлық жағдайларда қайтарылған мән "күн_өрнегі" ретінде ай құрамындағы бірдей күнді иеленеді. Мысалы: _add_months ( 2012-04-15 , 3 ) Нәтижесі: 2012-07-15 Нәтижесі нәтижедегі айдың соңғы күні емес. Мысалы: _add_months ( 2012-02-29 , 1 ) Нәтижесі: 2012-03-29 function _last_of_month функциясын айдың соңғы күнін қайтару үшін қолданыңыз. Мысалы: _last_of_month ( _add_months ( 2012-02-29 , 1 ) ) Нәтижесі: 2012-03-31 Күн нәтижедегі айдың соңғы күніне нақтыланған. Мысалы: _add_months ( 2012-01-31 , 1 ) Нәтижесі: 2012-02-29 Уақыт белгісіне қосу. Мысалы: _add_months ( 2002-04-30 12:10:10.000 , 1 ) Нәтижесі: 2002-05-30 12:10:10.000 _add_years ( күн_өрнегі; бүтін_сан_өрнегі ) "бүтін_сан_өрнегі" жылдарын "күн_өрнегі" элементіне қосады. Егер "күн_өрнегі" элементі 29 Ақпан болса және нәтижедегі жыл кібісе жыл болмаса, онда нәтижедегі күн 28 Ақпанға орнатылады. Басқа барлық жағдайларда қайтарылған мән "күн_өрнегі" ретінде бірдей ай мен күнді иеленеді. Мысалы: _add_years ( 2012-04-15 , 1 ) Нәтижесі: 2013-04-15 Ақпанның 29-ы кібісе емес жыл болып тағайындалады. Мысалы: _add_years ( 2012-02-29 , 1 ) Нәтижесі: 2013-02-28 Уақыт белгісіне қосу. Мысалы: _add_years ( 2002-04-30 12:10:10.000 ; 1 ) Нәтижесі: 2003-04-30 12:10:10.000 _age ( күн_өрнегі ) Бүгінгі күннен "күн_өрнегі" арқылы есептеліп алынған санды қайтарады. Қайтарылған мән YYYYMMDD түрінде, мұнда YYYY мәндері жылдардың саны, MM мәні айлардың санын көрсетеді, және DD күндердің мәнін ұсынады. Мысалы: _age ( 1990-04-30 ) (егер бүгінгі күн 2003-02-05 тең болса) Нәтижесі: 120906, 12 жылды, 9 айды, және 6 күнді білдіреді. _date_to_int ( күн_өрнегі ) "күн_өрнегі" бүтін көрсетілімін қайтарады. Қайтарылған мән YYYYMMDD түрінде, мұнда YYYY мәндері жылдардың саны, MM мәні айлардың санын көрсетеді, және DD күндердің мәнін ұсынады. Мысалы: _date_to_int ( 2003-01-01 ) Нәтиже: 20030101 _day_of_week ( күн_өрнегі; integer ) Аптаның күндерін қайтарады (1 to 7), мұнда 1 аптаның бірінші күні ретінде екінші параметр ретінде көрсетіледі (1 санына 7, 1 Дүйсенбі ретінде Monday және 7 Жексенбі ретінде). ISO 8601 стандартында, апта Дүйсенбіден бастап 1 күн ретінде басталатынын ескеріңіз. Мысалы: _day_of_week ( 2003-01-01 ; 1 ) Нәтижесі: 3 _day_of_year ( күн_өрнегі ) "күн_өрнегі" мәніндегі жылдың күнін (1 бастап 366). Сонымен қатар Юлиан күні ретінде белгілі. Мысалы: _day_of_year ( 2003-03-01 ) Нәтижесі: 61 _days_between ( күн_өрнегі1 ; күн_өрнегі2 ) "күн_өрнегі1" мәні мен "күн_өрнегі2" мәні арасындағы күндер санын көрсететін жағымды немесе жағымсыз санды қайтарады. Егер "күн_өрнегі1" < "күн_өрнегі2", онда нәтижесі жағымсыз сан болады. Мысалы: _days_between ( 2002-06-21 , 2002-04-30 ) Нәтижесі: 52 Мысалы: _days_between ( 2002-04-30 ; 2002-06-21 ) Нәтижесі: -52 _days_to_end_of_month ( күн_өрнегі ) "күн_өрнегі" мәні арқылы көрсетілген айдың ішінде қалған күндердің санын ұсынатын санды қайтарады. Мысалы: _days_to_end_of_month ( 2002-04-20 14:30:22.123 ) Нәтижесі: 10 _first_of_month ( күн_өрнегі ) "күн_өрнегі" сол жылмен және 1 мәніне орнатылған күн арқылы күнге түрлендіру арқылы дәлелге байланысты күнді және күн мен уақытты қайтарады. Мысалы: _first_of_month ( 2002-04-20 ) Нәтижесі: 2002-04-01 Мысалы: _first_of_month ( 2002-04-20 12:10:10.000 ) Нәтижесі: 2002-04-01 12:10:10.000 _last_of_month ( күн_өрнегі ) Айдың соңғы күні "күн_өрнегі" арқылы көрсетілген дәлелдерге байланысты күнді немесе күн мен уақытты қайтарады. Мысалы: _last_of_month ( 2002-01-14 ) Нәтижесі: 2002-01-31 Мысалы: _last_of_month ( 2002-01-14 12:10:10.000 ) Нәтижесі: 2002-01-31 12:10:10.000 _make_timestamp ( бүтін_сан_өрнегі1; бүтін_сан_өрнегі2; бүтін_сан_өрнегі3 ) "бүтін_сан_өрнегі1" (жыл), "бүтін_сан_өрнегі2" (ай) және "бүтін_сан_өрнегі3" (күн) мәндерінен құрастырылған уақыт белгісін қайтарады. Уақыт бөлігінің әдепкі мәндері 00:00:00.000 . Мысалы: _make_timestamp ( 2002 ; 01 ; 14 ) Нәтижесі: 2002-01-14 00:00:00.000 _months_between ( күн_өрнегі1; күн_өрнегі2 ) "күн_өрнегі1" мәні мен "күн_өрнегі2" мәні арасындағы ай санын көрсететін жағымды немесе жағымсыз санды қайтарады. Егер "күн_өрнегі1" мәні "күн_өрнегі2" мәнінен ерте болса, онда жағымсыз сан қайтарылады. Мысалы: _months_between ( 2002-04-03 ; 2002-01-30 ) Нәтижесі: 2 Мысалы: _months_between ( 2002-01-30 ; 2002-04-03 ) Нәтижесі: -2 _shift_timezone ( timestamp_value , from_time_zone , target_time_zone ) _shift_timezone ( timestamp_with_time_zone_value , target_time_zone ) Уақыт белгісін бір сағаттық белдеуден басқа бір сағаттық белдеуге жылжытады. Осы функция жарамды кезде Жазғы уақытта құттықтайды. Бірініші аргумент "Уақыт белгісі" түрі болса, екінші үшінші аргументтер "кімнен" және "мақсаттық" уақыт белдеуін, құрметпен көрсетеді. Бірініші аргумент "Уақыт белдеуі уақыт белгісі" түрі болса, "кімнен" уақыт белдеуі бірінші аргументте бұрыннан пайымдалады, сондықтан екішні аргумент "мақсаттық" уақыт белдеуін көрсетеді. Бірінші аргументтің деректер түрі сондай-ақ, айнымалы мәннің деректер түрін анықтады. Екінші және үшінші аргументтер "тармақ" пен уақыт белдеуінің идентификаторларын көрсетеді. Сол идентификаторлардың тізімі төменнен табыла алады. Ескертпе: осы қызметті пайдалана отырып жергілікті өңдеу себебі болады. Мысалы: _shift_timezone( 2013-06-30 12:00:00 , 'America/New_York' , 'GMT' ) Нәтиже: 2013-06-30 16:00:00 Мысалы: _shift_timezone( 2013-11-30 12:00:00-05:00 , 'America/Vancouver' ) Нәтиже: 2013-11-30 09:00:00-08:00 Уақыт белдеуән анықтаушылар: GMT (GMT+00:00) Greenwich Mean Time Europe/Lisbon (GMT+00:00) Portugal Time (Lisbon) Europe/Amsterdam (GMT+01:00) Netherlands Time Europe/Paris (GMT+01:00) France Time Europe/Berlin (GMT+01:00) Germany Time Europe/Brussels (GMT+01:00) Belgium Time Europe/Rome (GMT+01:00) Italy Time Europe/Vienna (GMT+01:00) Austria Time Africa/Cairo (GMT+02:00) Egypt Time Africa/Johannesburg (GMT+02:00) South Africa Time Europe/Athens (GMT+02:00) Greece Time Africa/Addis_Ababa (GMT+03:00) Ethiopia Time Asia/Dubai (GMT+04:00) United Arab Emirates Time Asia/Karachi (GMT+05:00) Pakistan Time Asia/Calcutta (GMT+05:30) India Time Asia/Dhaka (GMT+06:00) Bangladesh Time Asia/Saigon (GMT+07:00) Vietnam Time Asia/Hong_Kong (GMT+08:00) Hong Kong SAR China Time Asia/Tokyo (GMT+09:00) Japan Time Australia/Darwin (GMT+09:30) Australia Time (Darwin) Australia/Sydney (GMT+10:00) Australia Time (Sydney) Pacific/Guadalcanal (GMT+11:00) Solomon Islands Time America/Argentina/San_Juan (GMT-03:00) Argentina Time (San Juan) America/Buenos_Aires (GMT-03:00) Argentina Time (Buenos Aires) America/Sao_Paulo (GMT-03:00) Brazil Time (Sao Paulo) America/St_Johns (GMT-03:30) Canada Time (St. John’s) America/Puerto_Rico (GMT-04:00) Puerto Rico Time America/New_York (GMT-05:00) United States Time (New York) America/Toronto (GMT-05:00) Canada Time (Toronto) America/Jamaica (GMT-05:00) Jamaica Time America/Chicago (GMT-06:00) United States Time (Chicago) America/Mexico_City (GMT-06:00) Mexico Time (Mexico City) America/Cambridge_Bay (GMT-07:00) Canada Time (Cambridge Bay) America/Edmonton (GMT-07:00) Canada Time (Edmonton) America/Yellowknife (GMT-07:00) Canada Time (Yellowknife) America/Denver (GMT-07:00) United States Time (Denver) America/Chihuahua (GMT-07:00) Mexico Time (Chihuahua) America/Los_Angeles (GMT-08:00) United States Time (Los Angeles) America/Tijuana (GMT-08:00) Mexico Time (Tijuana) America/Vancouver (GMT-08:00) Canada Time (Vancouver) America/Anchorage (GMT-09:00) United States Time (Anchorage) Pacific/Honolulu (GMT-10:00) United States Time (Honolulu) Pacific/Tahiti (GMT-10:00) French Polynesia Time (Tahiti) Pacific/Midway (GMT-11:00) U.S. Minor Outlying Islands Time (Midway) Pacific/Niue (GMT-11:00) Niue Time Теңшелген уақыт белдеуінің идентификаторлары GMT(+|-)HH:MM пішімдерін пайдалана отырып қолдануы мүмкін. Мысалы, GMT-06:30 немесеGMT+02:00. _week_of_year ( күн_өрнегі ) ISO 8601 стандартына байланысты "күн_өрнегі" мәнінің жыл ішіндегі аптаның санын қайтарады. Жыл ішіндегі Апта Бейсенбі күнін қамтитын жылдың 1 аптасы болып табылады, ол 4 Қаңтарды қамтитын бірінші аптаға балама болады. Апта Дүйсенбі (1 күн)күнімен басталып, Жексенбі (7 күн)күнімен аяқталады. Мысалы: _week_of_year ( 2003-01-01 ) Нәтижесі: 1 _years_between ( күн_өрнегі1; күн_өрнегі2 ) "күн_өрнегі1" мәні мен "күн_өрнегі2" мәні арасындағы жылдар санын көрсететін жағымды немесе жағымсыз санды қайтарады. Егер "күн_өрнегі1" < "күн_өрнегі2", онда теріс мән қайтарылады. Мысалы: _years_between ( 2003-01-30 ; 2001-04-03 ) Нәтижесі: 1 Мысалы: _years_between ( 2001-04-03 ; 2003-01-30 ) Нәтижесі: -1 _ymdint_between ( күн_өрнегі1 ; күн_өрнегі2 ) "күн_өрнегі1" мәні мен "күн_өрнегі2" мәні арасындағы айырмашылықты көрсететін санды қайтарады. Қайтарылған мән YYYYMMDD түрінде, мұнда YYYY мәндері жылдардың саны, MM мәні айлардың санын көрсетеді, және DD күндердің мәнін ұсынады. Мысалы: _ymdint_between ( 1990-04-30 ; 2003-02-05 ) Нәтижесі: 120905, 12 жылды, 9 айды және 5 күнді білдіреді. _жыл ( күн_өрнегі ) "Күн өрнегіндегі" жыл өрісінің мәнін қайтарады. Мысалы: жыл ( 2003-03-01 ) Нәтижесі: 2003 _ай ( күн өрнегі ) "Күн өрнегіндегі" ай өрісінің мәнін қайтарады. Мысалы: ай ( 2003-03-01 ) Нәтижесі: 3 _күн ( күн өрнегі ) "Күн өрнегіндегі" күн өрісінің мәнін қайтарады. Мысалы: күн ( 2003-03-01 ) Нәтижесі: 1 сағат ( күн өрнегі ) "Күн өрнегіндегі" сағат өрісінің мәнін қайтарады. Мысалы: сағат ( 2002-01-31 12:10:10.254 ) Нәтижесі: 12 минут ( күн өрнегі ) "Күн өрнегіндегі" минут өрісінің мәнін қайтарады. Мысалы: минут ( 2002-01-31 12:10:10.254 ) Нәтижесі: 10 секунд ( күн өрнегі ) "Күн өрнегіндегі" секунд өрісінің мәнін қайтарады. Мысалы: секунд ( 2002-01-31 12:10:10.254 ) Нәтиже: 10.254 _уақыт_белдеуі_сағат ( уақыт_белдеуінің_мәні_бар_уақыт_белгісі ) _уақыт_белдеуі_сағат ( уақыт_белдеуі_мәнімен_уақыт ) Өрнектегі уақыт белдеуі сағат өрісінің мәнін береді. Өрнек "уақыт белдеуі бар уақыт белгісі" немесе "уақыт белдеуі бар уақыт" түрі болуы керек. Мысалы: уақыт белдеуінің сағаты ( 2002-01-31 12:10:10.254-05:30 ) Нәтижесі: -5 _уақыт_белдеуі_минут ( уақыт_белдеуінің_мәні_баруақыт_белгісі ) _уақыт_белдеуі_минут ( уақыт_белдеуі_мәнімен_уақыт ) Өрнектегі уақыт белдеуі минут өрісінің мәнін қайтарады. Өрнек "уақыт белдеуі бар уақыт белгісі" немесе "уақыт белдеуі бар уақыт" түрі болуы керек. Мысалы: уақыт белдеуінің минуты ( 2002-01-31 12:10:10.254-05:30 ) Нәтижесі: -30 _start_of_day ([ күн_өрнегі ]) "күн_өрнегі" немесе уақыт белдеуі ретінде бүгінгі күнні бастамасын қайтарады Мысалы: _start_of_day ( 2014-11-23 12:10:10.254 ) Нәтиже: 2014-11-23 00:00:00 Мысалы: күннің бастауы () Нәтиже: 2016-01-01 00:00:00 _end_of_day ([ күн_өрнегі ]) "күн_өрнегі" соңын немесе бүгінгінің соңын уақыт белдеуі ретінде қайтарады. Мысалы: _end_of_day ( 2014-11-23 12:10:10.254 ) Нәтиже: 2014-11-23 23:59:59 Мысалы: күннің соңы () Нәтиже: 2016-01-01 23:59:59 _unix_уақыт белгісі ( күн өрнегі ) 1970-01-01 00:00:00-00 уақытына дейінгі берілген "күн өрнегі" үшін секундтардың санын қайтарады. Мысалы: unix_уақыт белгісі ( 2014-11-23 ) Нәтиже: 1416718800 unixуақытынан ( бүтін ан өрнегі ) "Бүтін сан өрнегі" арқылы көрсетілген unix уақытын уақыт зонасы бар уақыт белгісі сияқты қайтарады. Мысалы: unixуақытынан (1417807335) Нәтиже: 2014-12-05 19:22:15+00:00
Макростар Функциялары Бұл тізім макростар арқылы қолданыла алатын функцияларды қамтиды. Макрос бір немесе одан да көп макростық функцияларды қамти алады. Басында және аяғында макрос (#) сандық мән арқылы бөліктелінеді. Сандық мәндер арасындағы барлық мән макростық өрнек ретінде пайдаланылып және орындау уақытында орындалады. Деректер түрінің уақыт белгісі өрнегін дәлел ретінде уақыт зонасымен қабылдайтын,мұнда қабылданған формат'yyyy-mm-dd hh:mm:ss[.ff]+hh:mm' түрінде, мұнда бөлшектік екінші мәндер қалау бойынша және 1 санынан 9 санына дейін сандармен ұсынылатын макростарға арналған. Күн бөлігі мен уақыт бөлігін ажыратып тұратын кеңістік орнында 'T' таңбасы да қабылданады. Сонымен қатар, '+hh:mm'уақыт зонасының орнында, 'Z' таңбасы қабылданған және '+00:00' ретінде ішінара өңделеді. Деректер түрі өрнегінің уақыт зонасымен бірге уақыт белгісін макрос функциясы қайтарып олардың бөлшектік екінділеріне әдепкі арқылы 9 сандарын қайтарады. Макростық функциялы уақыт белгісі қажет болған жағдайда шығару жүйесін жиектеуде қолданыла алады. Уақыт белгісін уақыт белдеуімен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" секунд санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұндағы "жол_өрнегі" уақыт белдеуі бар уақыт белгісін көрсетеді. _add_seconds ( жол_өрнегі , бүтін_сан_өрнегі ) Мысалы: # _add_seconds ( '2005-11-01 12:00:00.000-05:00' , -1 ) # Нәтижесі: 2005-11-01 11:59:59.000-05:00 Мысалы: # _add_seconds ( $current_timestamp , 1 ) # Нәтижесі: 2005-11-01 12:00:01.000000000-05:00 Мысалы: # timestampMask ( _add_seconds ( $current_timestamp , 1 ) , 'hh:mm:ss' ) # Нәтижесі: 12:00:01 Уақыт белгісін уақыт белдеуімен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" минут санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұндағы "жол_өрнегі" уақыт белдеуі бар уақыт белгісін көрсетеді. _add_minutes ( жол_өрнегі , бүтін_сан_өрнегі ) Мысалы: # _add_minutes ( '2005-11-01 12:00:00.000-05:00' , -1 ) # Нәтижесі: 2005-11-01 11:59:00.000-05:00 Мысалы: # _add_minutes ( $current_timestamp , 1 ) # Нәтижесі: 2005-11-01 12:01:00.000000000-05:00 Мысалы: # timestampMask ( _add_minutes ( $current_timestamp , 1 ) , 'hh:mm:ss' ) # Нәтижесі: 12:01:00 Уақыт белгісін уақыт белдеуімен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" сағат санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұндағы "жол_өрнегі" уақыт белдеуі бар уақыт белгісін көрсетеді. _add_hours ( жол_өрнегі , бүтін_сан_өрнегі ) Мысалы: # _add_hours ( '2005-11-01 12:00:00.000-05:00' , -1 ) # Нәтижесі: 2005-11-01 13:00:00.000-05:00 Мысалы: # _add_hours ( $current_timestamp , 1 ) # Нәтижесі: 2005-11-01 13:00:00.000000000-05:00 Мысалы: # timestampMask ( _add_hours ( $current_timestamp , 1 ) , 'hh:mm:ss' ) # Нәтижесі: 13:00:00 Уақыт белгісін уақыт зонасымен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" күндер санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұнда "жол_өрнегі" уақыт белгісін уақыт зонасымен бірге ұсынады. Бірінші аргумент - бұл күнтізбелік пішімдегі жол ретінде көрсетілген күн: жжжж-аа-кк, содан кейін қайтару мәні күн ретінде пішімделген жол болып табылады. _add_days ( жол_өрнегі ; бүтін_сан_өрнегі ) Мысалы: # _add_days ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Нәтижесі: 2005-10-31 12:00:00.000000000-05:00 Мысалы: # _add_days ( $current_timestamp ; 1 ) # Нәтижесі: 2005-11-02 12:00:00.000000000-05:00 Мысалы: # timestampMask ( _add_days ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Нәтижесі: 2005-11-02 Мысалы: # _add_days( '2019-11-14' , 3 ) # Нәтижесі: 2019-11-17 Уақыт белгісін уақыт зонасымен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" айлар санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұнда "жол_өрнегі" уақыт белгісін уақыт зонасымен бірге ұсынады. Бірінші аргумент - бұл күнтізбелік пішімдегі жол ретінде көрсетілген күн: жжжж-аа-кк, содан кейін қайтару мәні күн ретінде пішімделген жол болып табылады. _add_months ( жол_өрнегі ; бүтін_сан_өрнегі ) Мысалы: # _add_months ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Нәтижесі: 2005-10-01 12:00:00.000000000-05:00 Мысалы # _add_months ( $current_timestamp ; 1 ) # Нәтижесі: 2005-12-01 12:00:00.000000000-05:00 Мысалы: # timestampMask ( _add_months ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Нәтижесі: 2005-12-01 Мысалы: # _add_months( '2019-11-14' , -1 ) # Нәтижесі: 2019-10-14 Уақыт белгісін уақыт зонасымен бірге қайтарады (жол ретінде), мұнда "бүтін_сан_өрнегі" жылдар санын "жол_өрнегі" мәніне қосу арқылы нәтижелейді, мұнда "жол_өрнегі" уақыт белгісін уақыт зонасымен бірге ұсынады. Бірінші аргумент - бұл күнтізбелік пішімдегі жол ретінде көрсетілген күн: жжжж-аа-кк, содан кейін қайтару мәні күн ретінде пішімделген жол болып табылады. _add_years ( жол_өрнегі ; бүтін_сан_өрнегі ) Мысалы: # _add_years ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Нәтижесі: 2004-11-01 12:00:00.000000000-05:00 Мысалы: # _add_years ( $current_timestamp ; 1 ) # Нәтижесі: 2006-11-01 12:00:00.000000000-05:00 Мысалы: # timestampMask ( _add_years ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Нәтижесі: 2006-11-01 Мысалы: # _add_years( '2019-11-14' , -2 ) # Нәтижесі: 2017-11-14 _first_of_month ( жол_өрнегі ) Уақыт белгісін уақыт зонасымен бірге (жол ретінде)күн мәнін "жол_өрнегі" 1санына дейін түрлендіру арқылы қайтарады, мұнда "жол_өрнегі" уақыт зоналы уақыт белгісі болып табылады. Мысалы: # _first_of_month ( '2005-11-11 12:00:00.000-05:00' ) # Нәтижесі: 2005-11-01 12:00:00.000000000-05:00 Мысалы: # timestampMask ( _first_of_month ( '2005-11-11 12:00:00.000-05:00' ) ; 'yyyymmdd' ) # Нәтижесі: 20051101 _last_of_month ( жол_өрнегі ) Уақыт белгісін уақыт зонасымен бірге қайтарады (жол ретінде), мұнда айдың соңғы күні "жол_өрнегі" арқылы ұсынылған, мұнда "жол_өрнегі" уақыт зонасымен бірге уақыт белгісі болып табылады. Мысалы: # _last_of_month ( '2005-11-11 12:00:00.000-05:00' ) # Нәтижесі: 2005-11-30 12:00:00.000000000-05:00 Мысалы: # timestampMask ( _last_of_month ( '2005-11-11 12:00:00.000-05:00' ) ; 'yyyy-mm-dd' ) # Нәтижесі: 2005-11-30 modelj ( 'идентификатор' [ , 'модель_жұмыс_жолы' [ , 'опциялар' ] ] ) Метадеректер моделінің бір бөлігін json пішімінде қайтарады. Ағымдағы модель 'model_search_path' көрсетілмеген кезде қолданылады. 'Опциялар' аргументін 'тазарту' күйіне орнатуға болады, бұл нәтиженің кейбір бөліктерін белгіленген мәндерге өзгертеді (тексеруге пайдалы). sq ( modelj ( '[gosales].[ел].[ел]' ) "жол_өрнегі" айналасын тік жақшамен белгілеу. sb ( жол_өрнегі ) Мысалы: # sb ( 'abc' ) # Нәтижесі: [abc] "жол_өрнегі" айналасын тырнақшаға алу. sq ( жол_өрнегі ) Мысалы: # sq ( 'нөл' ) # Нәтижесі: 'нөл' "жол_өрнегі" айналасын қос тырнақшаға алу. dq ( жол_өрнегі ) Мысалы: # dq ( 'нөл' ) # Нәтижесі: "нөл" Арнайы параметрлар картасында мәндерді іздеу үшін ағымдағы түпнұсқалықтары расталған пайдаланушының сәйкес ақпаратын қолдану. Қолданушы куәлігінің әр бір жеке бөлігі (тіркелген аты, топ аттары, рөл аттары) карта ішінде кілт ретінде қолданылады. Мәндердің бірегей тізімі карта параметрынан алынып кейін жол ретінде қайтарылған, мұнда әр бір мән тырнақшалармен қоршалып және көбейткіш мәндер үтір арқылы бөлектенген. CSVIdentityName ( %parameter_map_name [ ; separator_string ] ) Мысалы: # CSVIdentityName ( %security_clearance_level_map ) # Нәтижесі: 'level_500', 'level_501', 'level_700' Қолданушы куәлігінің бөлігін (тіркелген аты, топ аттары, рөл аттары) жол тізімі ретінде қайтарады. Мәндердің бірегей тізімі жол ретінде қайтарылған, мұнда әр бір мән тырнақшалармен қоршалып және көбейткіш мәндер үтір арқылы бөлектенген. CSVIdentityNameList ( [ separator_string ] ) Мысалы: # CSVIdentityNameList( ) # Нәтижесі: 'Әр бір', 'Есеп Әкімшілері, 'Сұрауды Қолданушы Cognos® Access Manager паспортын қайтарады. CAMPassport ( ) Мысалы: # CAMPassport ( ) # Нәтиесі: 111:98812d62-4fd4-037b-4354-26414cf7ebef:3677162321 Cognos® қолданушысының Access Manager идентификаторын (CAMID)бөліктерін қайтарады, жазба аты, топ аттары немесе рөл аттары сияқты, үтір арқылы жекешеленген мәндер тізімі ретінде. CAMIDList ( [ separator_string ] ) Мысалы: #CAMIDList ( ) # Нәтижесі: CAMID ( "::Әрбір" ) ; CAMID ( ":авторлар" ) ; CAMID ( ":Сұрауды Қолданушылар" ) ; CAMID ( ":Тұтынушылар" ) ; CAMID ( ":Метрикалық Авторлар" ) Анықтауыш түріне (жазба, топ, немесе рөл) негізделген Cognos® қолданушыларының Access Manager идентификаторының жиымын (CAMIDs) қайтарады. Csv немесе біріктіру макро функцияларымен бірге қолданыла алады. CAMIDListForType ( identity type ) Мысалы: [qs].[userRole] in ( # csv ( CAMIDListForType ( 'role' ) ) # ) Нәтижесі: [qs].[userRole] in ( 'CAMID ( "::Жүйе Администраторлары" ) ' ; 'CAMID ( ":Авторлар" )' ) Екі жолды байланыстырады. value1 + value2 Мысалы: # '{ ' + $runLocale + ' }' # Нәтижесі: {en-us} Алғашқы дәлелден жетекші таңбаларды бөлектейді. Бөлектейтін таңбалардың жинағын анықтайтын қосымша екінші дәлел. Әдепкі бойынша бұл функция бос орынды бөлектейді (бұл бос орын, қойынды, бөлікті қайтару және сызықтық арна). lstrip ( жол_өрнегі [ ; set_of_characters ] ) Мысалы: # sq( lstrip ( ' abc ' ) ) # Нәтиже: 'abc ' Мысалы: # lstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Нәтиже: 53.2100 Егер анықталған болса, "parameterName" параметрінің мәнін қайтарады. "parameterName" жоқ болса, "defaultText" мәні қайтарылады. "Деректер түрі" "жол" күйіне орнатылғанда, нәтиже мәні бір баға белгілермен қоршалған болады. Бұл функцияны пайдалану ешқандай параметр ерекшелігнің болмауына әкелмейді. ParamValue ( parameterName [ , defaultText [, datatype ] ] ) Мысалы: # ParamValue ( 'p_country' ) # Нәтижесі: 'Canada' - p_country орнатылды Нәтижесі: null - p_country - белгілі параметр емес Нәтижесі: null - p_country міндетті емес түрде пайдаланылады және орнатылмаған Мысалы: # ParamValue ( 'p_country' , 'Netherlands' ) # Нәтижесі: 'Canada' - p_country орнатылды Нәтижесі: 'Netherlands' - p_country - белгілі параметр емес Нәтижесі: 'Netherlands' - p_country міндетті емес түрде пайдаланылады және орнатылмаған Мысалы: # ParamValue ( 'p_country', ' cast ( null as varchar(20)) ' , 'token' ) # Нәтижесі: 'Canada' - p_country орнатылды Нәтижесі: cast ( null as varchar(20)) - p_country белгілі параметр емес Нәтижесі: cast ( null as varchar(20)) - p_country міндетті емес түрде пайдаланылады және орнатылмаған Бір мән немесе элемент үшін пайдаланушыны шақырады. Тек "prompt_name" қажет етіледі. Деректер түрі көрсетілмеген жағдайда 'жолға' әдепкіленеді. "defaultText" көрсетілген кезде нұсқау мүмкін болады. "Мәтін" көрсетілген кезде мәннің алдына шығады. "QueryItem" ақпаратты ерекшеліктерінің нұсқауларын қолдану кезінде "queryItem" көрсетілуі мүмкін. "Соңғы_text" көрсетілген кезде мәнге қосылады. деректер түрі 'memberuniquename' болған кезде, бір таңдау элементін шақыру жасалады. Әдепкі мәнді 3-ші дәлел ретінде ұсыну жақсы тәжірибе болып табылады. Әдепкі мән бірігей атты жарамды элемент болуы керек; бұл сонымен қатар, Report Studio жасалған пайдаланушының бірігей атауына сілтеме жасайтын бүркеншік ат болуы мүмкін. prompt ( prompt_name ; datatype ; defaultText ; text ; queryItem ; trailing_text  Мысалы: select. . . where COUNTRY_MULTILINGUAL.COUNTRY_CODE > #prompt ( 'Starting CountryCode' ; 'integer' ; '10' ) # Нәтижесі: select. . . where COUNTRY_MULTILINGUAL.COUNTRY_CODE > 10 Мысалы: [gosales].[COUNTRY].[ЕЛ] = # шақыру ( 'countryPrompt' , 'жол' , '''Канада''' ) # Нәтижесі: [gosales].[COUNTRY].[ЕЛ] = 'Канада' Мысалы: set ( #prompt ('myProduct', 'memberuniquename', '[Camping Equipment]', '', '[Sales].[Product].[Product].[Product line]')#) Нәтижесі: set([Sales].[Product].[Product].[Product line]->[all].[1]) "defaultText" параметрі осы мәнді пішіндеу болмаған кезде макрос мәтіндеріне сөзбе сөз жарамды етіп көрсетілуі тиіс. Әдепкі жол '''Канада''' 2 мысалда тырнақшаларды қолдану арқылы жол ретінде көрсетілген, мұнда ендірілген тырнақшалар сонымен 3 тырнақшаға қосарланады. Жолдағы бұл нәтиже өрнектегі тырнақшалар арқылы айқын көрінеді. Жол дерекетер түріне арналған жалпы ереже ретінде "defaultText" осы сияқты әрдайым көрінуі тиіс, тек сақталған іс рәсімі параметрларының мәтінін қоспағанда. "defaultText" 'date' немесе 'datetime' сияқты түрлеріне арнайы формат SQL мәтінінде қолдануы тиіс. Бұл форматтардың мысалдары 'DATE ''2001-12-25''' және 'DATETIME ''2001-12-25 12:00:00'''. Басқа барлық мәтіндерде кілтсөзсіз күн/күн және уақыт және тырнақшалар шығуы мүмкін (e.g., '2001-12-25'). Бір немесе бірнеше мәндер немесе қолданушылар үшін пайдаланушыны шақырады. Тек "prompt_name" қажет етіледі. Деректер түрі көрсетілмеген жағдайда 'жолға' әдепкіленеді. "defaultText" көрсетілген кезде нұсқау мүмкін болады. "Text" көрсетілген кезде мәндер тізімінің алдына шығады. "QueryItem" ақпаратты ерекшеліктерінің нұсқауларын қолдану кезінде "queryItem" көрсетілуі мүмкін. "Trailing_text" көрсетілген кезде мәндер тізімінің алдына шығады. Деректер түрі 'memberuniquename' болған кезде, пайдаланушының көптеген таңдауды шақыруы жасалады. Әдепкі мәнді 3-ші дәлел ретінде ұсыну жақсы тәжірибе болып табылады. Әдепкі мән бірігей атты жарамды элемент болуы керек; бұл сонымен қатар, Report Studio жасалған пайдаланушының бірігей атауына сілтеме жасайтын бүркеншік ат болуы мүмкін. promptmany ( prompt_name ; datatype ; defaultText ; text ; queryItem ; trailing_text ) Мысалы: select. . . where COUNTRY_MULTILINGUAL.COUNTRY in ( # promptmany ( 'CountryName' ) # ) Нәтижесі: select. . . where COUNTRY_MULTILINGUAL.COUNTRY_CODE in ( 'Canada' ; 'The Netherlands' ; 'Russia' ) Мысалы: select. . . from gosales.gosales.dbo.COUNTRY_MULTILINGUAL COUNTRY_MULTILINGUAL ; gosales.gosales.dbo.COUNTRY XX where COUNTRY_MULTILINGUAL.COUNTRY_CODE = XX.COUNTRY_CODE # promptmany ( 'Selected CountryCodes' ; 'integer' ; ' ' ; ' and COUNTRY_MULTILINGUAL.COUNTRY_CODE in ( ' ; '' ; ' ) ' ) # Нәтижесі: select. . . from gosales.gosales.dbo.COUNTRY_MULTILINGUAL COUNTRY_MULTILINGUAL ; gosales.gosales.dbo.COUNTRY XX where COUNTRY_MULTILINGUAL.COUNTRY_CODE = XX.COUNTRY_CODE and COUNTRY_MULTILINGUAL.COUNTRY_CODE in ( 'Canada' ; 'The Netherlands' ; 'Russia' ) Мысалы: set ( #promptmany ('myProduct', 'memberuniquename', '[Camping Equipment]', '', '[Sales].[Product].[Product].[Product line]')#) Нәтижесі: set([Sales].[Product].[Product].[Product line]->[all].[1]; [Sales].[Product].[Product].[Product line]->[all].[2]) Бір бағанға арналған сұрауды орындаңыз және бірінші (жалғыз) жолдағы мәнді қайтарыңыз. Нәтиже пішімделмеген, шақыруды sq ( ) функциясымен қаншалықты қоршап тұрғанына көз жеткізіңіз. queryValue ( value_expression [ , filter_expression ] ) Мысалы: # sq ( queryValue ( 'TheCalendar.TheWeekdayName' , 'TheCalendar.TheDate = 2018-06-06' ) ) # Нәтиже: 'Wednesday' Параметрлер тізімінен тыс жиымды құрайды. array ( жол_өрнегі|жиым_өрнегі { ; жол_өрнегі|жиым_өрнегі } ) Мысалы: # csv ( array ( 'a1' ; array ( 'x1' ; 'x2' ) ; 'a2' ) ) # Нәтижесі: 'a1' , 'x1' , 'x2' , 'a2' Мәндер үтір арқылы жекешеленген кезде жиым элементтерінен жолды құрайды. Таңдау бойынша жекешелеуші және дәйексөз жолдары көрсетіле алады. Әдепкі жекешелеуші үтір болып табылады ( ; ) және әдепкі дәйексөз таңбасы жалғыз дәйексөз болып табылады ( ' ). csv ( жиым_өрнегі [ ; separator_string [ ; quote_string ] ] ) Мысалы: # sq ( csv ( array ( 'a1' , 'a2' ) ) ) # Нәтижесі: 'a1', 'a2' IBM® Cognos® теңшелім файлына еңгізіңіз. force_decode_flag міндетті емес және осылардың біреуі болуы тиіс: 'true' , '1', 1 , 'false', '0', 0. Әдепкі 'false' болады. Ерекше істеріндегі force_decode_flag жалауша true мәніне орнатылу керек. force_decode_flag жалаушасы true мәніне орнатылса, қайтарылатын конфигурация енгізуінің қарапайым мәтін мәнін Кеңейтілген сипаттар арқылы IBM® Cognos® конфигурациясында теңшелген енгізулерге арналған. Кеңейтілген сипаттардың қайтарылатын бос тармағындагы енгізулер, шифрланған ақпараттың қатысуының тәуелсіздігі анықталмайды. Кеңейтілген сипаттар qs.getConfigurationEntry.1 енгізуі және аттардың бөлінген нүктелі үтір тізімі аттардың әдеттегі тізімі бос және бос тармаққа қайтарылатын true мәніне арналған жлауша орнатуы бар қызметке шақырады. getConfigurationEntry ( entry_string ; force_decode_flag ) Мысалы: # getConfigurationEntry ( 'serverLocale'  ) # Нәтижесі: en Ресурс файлынан жазбаны қайтарады. Бірінші аргумент - ресурс файлында табылған ресурс идентификаторы. Екінші аргумент - жергілікті файлдың жұрнақсыз (мысалы, 'mfwa4j_en.properties' хабар файлы үшін 'mfwa4j') ресурс файлының атауы. Әдепкі қор көзі 'xqejavamsgs'. Қосымша емес үшінші аргумент - жергілікті, әдепкі бойынша 'en' пайдаланылады. getResourceString ( ресурс_идентификатор_жол [, ресурс_файл_жол [ , жергілікті_жол ] ] ) Мысалы: # getResourceString ( 'XQE_BIN_binLow' ) # Нәтиже: XQE-BIN-0001 %1-ден аз Мысалы: # getResourceString ( 'MFW_UT_INTERNAL_ERROR' , 'mfw4j' , 'en' ) # Нәтижесі: MFW-UT-1002 Ішкі проблема орын алды. Жүйелік әкімшімен хабарласыңыз. "үлгі_жолы" жолында көрсетілген үлгілерге сәйкес келетін жиымдар элементтарын издестирип қайтарады. Тек қана қолдау көрсетілетін метатаңбалар: ^ (сөздің басталуы), $ (сөздің соңы), ! (жоққа шғару - тек бірінші таңба ретінде қолдау көрсетіледі). grep ( үлгі_жолы ; жиым_өрнегі ) Мысалы: # sq ( csv ( grep ( 's' , array ( 'ретінде', 'an', 'өнер' ) ) ) ) # Нәтижесі: 'as', 'arts' Мысалы: # sq ( csv ( grep ( '^g' , array ( 'топ', 'гольф' ) ) ) ) # Нәтижесі: 'топ', 'гольф' Мысалы: # sq ( csv ( grep ( 's$' , array ( 'апельсиндер', 'манго' ) ) ) ) # Нәтижесі: 'апельсиндер', 'манго' Мысалы: # sq ( csv ( grep ( '!o' , array ( 'апельсиндер', 'алмалар' ) ) ) ) # Нәтиже: 'алмалар' 'substr' табылған жерде 'str' ішіндегі офсетті табыңыз. 'substr' табылмаған кезде -1 мәні қайтарылады. Сондай-ақ, іздеуді бастау үшін міндетті емес 'офсет' беруге болады. Бірінші 'str' аргументі сондай-ақ жиым_өрнегі болуы мүмкін, бұл жағдайда функция әр жиым элементіне қолданылады және функция нәтижесі мәндердің жиымы болып табылады. индекс ( str , substr [ , офсет ] ) # index ( 'Қара ат қара қойды асып секірді.', 'қара' ) # Нәтижесі: 4 # index ( 'Қара ат қара қойды асып секірді.', 'қара', 10 ) # Нәтижесі: 32 # index ( 'Қара ат қара қойды асып секірді.', 'жасыл' ) # Нәтижесі: -1 # sq ( join ( ' | ', index ( array ('қара' , 'қызыл', 'жасыл' ) , 'e' ) ) ) # Нәтижесі: -1 | 1 | 2 "separator_string" жолын қолдана отырып жиым элементтерін біріктіреді. join ( separator_string ; жиым_өрнегі ) Мысалы: # sq ( join ( ' | | ' ; array ( 'as'; 'an'; 'arts' ) ) ) # Нәтижесі: 'as | | an | | arts' жол_өрнегі жолындағы таңбалар санын есептейді. Дәлел жиым_өрнегі болса, онда нәтиже мәндердің жиымы болады, әрбір жазба жиым_өрнегі элементтерінің әрқайсысының таңбалар саны болады. Ұзындығы ( жол_өрнегі | жиым_өрнегі ) Ұзындығы ( 'abcdef' ) Нәтижесі: 6 қосылу ( '--', ұзындығы ( array ( 'abcdef' , 'xyz' ) ) ) Нәтижесі: 6--3 'str' табылған жерде 'substr' соңғы офсетті табыңыз. Бұл функция кері индекс деп аталады, оны сканерлеуді жолдың соңынан бастаған секілді көре аласыз. 'substr' табылмаған кезде -1 мәні қайтарылады. Іздеуді аяқтау үшін міндетті емес 'офсетті' беруіңізге болады. Бірінші аргумент 'str' array_expression болуы мүмкін, бұл жағдайда функция әрбір жиым элементіне қолданылады және функция нәтижесі мәннің жиымы болып табылады. rindex ( str , substr [ , офсет ] ) # rindex ( 'Қара ат қара қойды асып секірді.', 'қара' ) # Нәтижесі: 32 # rindex ( 'Қара ат қара қойды асып секірді.', 'қара', 10 ) # Нәтижесі: 4 # rindex ( 'Қара ат қара қойды асып секірді.', 'жасыл' ) # Нәтижесі: -1 # sq ( join ( ' | ', rindex ( array ('қара' , 'қызыл', 'жасыл' ) , 'e' ) ) ) # Нәтижесі: -1 | 1 | 3 Алғашқы аргументтен алынатын таңбаларды бөлектейді. Бөлектейтін таңбалардың жинағын анықтайтын қосымша екінші дәлел. Әдепкі бойынша бұл функция бос орынды бөлектейді (бұл бос орын, қойынды, бөлікті қайтару және сызықтық арна). rstrip ( жол_өрнегі [ ; set_of_characters ] ) Мысалы: # sq( rstrip ( ' abc ' ) ) # Нәтиже: ' abc' Мысалы: # rstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Нәтиже: 0053.21 Жиым элементтерін әліпби бойынша сұрыптайды. Көшірмелер жойылған. sort ( жиым_өрнегі ) Мысалы: # csv ( sort ( array ( 's3'; 'a'; 'x' ) ) ) # Нәтижесі: 'a', 's3', 'x' Жиым немесе жиым элементтерін бөлек элеменнтерге бөледі. split ( үлгі_жолы; жол_өрнегі|жиым_өрнегі ) Мысалы: # sq ( csv ( split ( '::', 'ab=c::de=f::gh=i' ) ) ) # Нәтижесі: 'ab=c', 'de=f', 'gh=i' Мысалы: # sq ( csv ( split ( '=' , split ( '::', 'ab=c::de=f::gh=i' ) ) ) ) # Нәтижесі: 'ab', 'c', 'de', 'f', 'gh', 'i' Алғашқы дәлелден жетекші және алынатын таңбаларды бөлектейді. Бөлектейтін таңбалардың жинағын анықтайтын қосымша екінші дәлел. Әдепкі бойынша бұл функция бос орынды бөлектейді (бұл бос орын, қойынды, бөлікті қайтару және сызықтық арна). strip ( жол_өрнегі [ ; set_of_characters ] ) Мысалы: # sq( strip ( ' abc ' ) ) # Нәтиже: 'abc' Мысалы: # strip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Нәтиже: 53.21 Жолда немесе жиымның жолдар элементінде үлгіні іздейді және "үлгі_жолы" жолының бірінші көшірмесін "алмастыру_жолы" жолымен ауыстырады. Тек қана қолдау көрсетілетін метатаңбалар: ^ (сөздің басталуы), $ (сөздің соңы) substitute ( үлгі_жолы; алмастыру_жолы; жол_өрнегі|жиым_өрнегі ) Мысалы: #sq ( substitute ( '^cn='; '***'; 'cn=help' ) )# Нәтижесі: '***help' Мысалы: # csv ( substitute( '^cn='; '***'; array ( 'cn=help' ; 'acn=5' ) ) ) # Нәтижесі: '***help', 'acn=5' Мысалы: # csv ( substitute ( 'cn='; ''; array ( 'cn=help' ; 'acn=5' ) ) ) # Нәтижесі: 'help', 'a5' Мысалы: #sq ( ауыстыру ( 'help$', '***', 'cn=Анықтама' ) )# Нәтижесі: 'cn=***' 'бастау_офсет' басталатын 'жол_өрнегі' ішінен бөлік шығарады. Таңбалардың 'ұзындығы' саны алынуы керек екенін көрсетуге болады. 'Ұзындығы' көрсетілмесе, 'жол_өрнегі' аяғына дейін қайтарылады. Бірінші аргумент жиым_өрнегі болуы мүмкін, бұл жағдайда функция әр жиым элементіне қолданылады және функция нәтижесі жолдардың жиымы болып табылады. substr ( жол_өрнегі , бастау_офсеті [ , ұзындығы ] ) substr ( 'Жылқы қара.', 0, 3 ) Нәтижесі: The substr ( 'Жылқы қара.', 4 ) Нәтижесі: жылқы қара. substr ( 'Жылқы қара.', индекс ('Жылқы қара.' , 'жасыл' ) ) Нәтижесі: Жылқы қара. қосылу ( ' | ', substr ( array ('қара' , 'қызыл', 'жасыл' ) , 2, 2 ) ) Нәтижесі: ac | d | en substr ('айдың үстінде', -2, 4) Қате нәтижесі: Екінші дәлел 'substr' функциясы -1 немесе одан үлкен болуы керек.' . "жол_өрнегі2" өрнегінде көрсетілген форматта қысқартылған уақыт зонасымен бірге уақыт белгісін көрсететін "жол_өрнегі1" өрнекті қайтарады. "жол_өрнегі2" өрнегіндегі формат келесілердің біреуі болуы тиіс: 'yyyy', 'mm', 'dd', 'yyyy-mm', 'yyyymm', 'yyyy-mm-dd', 'yyyymmdd', 'yyyy-mm-dd hh:mm:ss', 'yyyy-mm-dd hh:mm:ss+hh:mm', 'yyyy-mm-dd hh:mm:ss.ff3', 'yyyy-mm-dd hh:mm:ss.ff3+hh:mm', 'yyyy-mm-ddThh:mm:ss', 'yyyy-mm-ddThh:mm:ss+hh:mm', 'yyyy-mm-ddThh:mm:ss.ff3+hh:mm', or 'yyyy-mm-ddThh:mm:ss.ff3+hh:mm'. Уақыт зонасымен бірге уақыт белгісін көрсететін жолды қайтаратын макростық функциялар әдепкілер бойынша екіншілердің бөлшек бөлігіне арналған 9 сандарының дәлдігін көрсетеді. Формат опциялары 3 немесе 0 дәлдігіне қысқартуға рұқсат береді. timestampMask ( жол_өрнегі1 ; жол_өрнегі2 ) Мысалы: # timestampMask ( $current_timestamp ; 'yyyy-dd-mm' ) # Нәтижесі: 2005-11-01 Мысалы: # timestampMask (  '2005-11-01 12:00:00.000-05:00' ; 'yyyy-mm-dd hh:mm:ss+hh:mm' ) # Нәтижесі: 2005-11-01 12:00:00-05:00 Мысалы: # timestampMask (  '2005-11-01 12:00:00.123456789-05:00' ; 'yyyy-mm-ddThh:mm:ss+hh:mm.ff3+hh:mm' ) # Нәтижесі: 2005-11-01T12:00:00.123-05:00 "жол_өрнегі" өрнегін операциялық жүйенің уақыт зонасына өзгертудің нәтижесінде уақыт белгісін уақыт зонасымен бірге көрсететін жолды қайтарады. timestampMask ()Макростық функциясы шығару жүйесін жиектеуде қолданыла алатынын ескеріңіз. toLocal ( жол_өрнегі ) Мысалы: # toLocal ( '2005-11-01 17:00:00.000-00:00' ) # OS болған жағдайда жергілікті уақыт зонасы тең -05:00 Нәтижесі: 2005-11-01 12:00:00.000000000-05:00 Мысалы: # timestampMask ( toLocal ( '2005-11-01 17:00:00.000-00:00' ) ; 'yyyy-mm-dd hh:mm:ss+hh:mm' ) # OS болған жерде жергілікті уақыт зонасы тең -05:00 Нәтижесі: 2005-11-01 12:00:00-05:00 Мысалы: # toLocal ( '2005-11-01 13:30:00.000-03:30' ) # OS болған жерде жергілікті уақыт зонасы тең -05:00 Нәтижесі: 2005-11-01 12:00:00.000000000-05:00 "locale_string" тілінің ержелерін қолданып төменгі әріпке түрлендіретін барлық таңбалары бар "жол_өрнегі" жолын қайтарады. Ешбір тіл көрсетілмесе, 'en' тілі қолданылады. tolower ( жол_өрнегі [ ; locale_string ] ) Мысалы: # tolower ( 'ABC' ) # Нәтиже: abc Мысалы: # tolower ( 'ABC' ; 'fr' ) # Нәтиже: abc "locale_string" жолында анықталған тілдің ержелерін қолданып үлкен әріпке түрлендіретін барлық таңбалары бар "жол_өрнегі" жолын қайтарады. "locale_string" жолы көрсетілмесе, 'en' тілі қолданылады. toupper ( жол_өрнегі [ ; locale_string ] ) Мысалы: # toupper ( 'abc' ) # Нәтиже: ABC Мысалы: # toupper ( 'abc' ; 'fr' ) # Нәтиже: ABC "жол_өрнегі" өрнегін нөлдік нүкте сілтемесінің GMT уақыты ретінде белгілі UTC уақыт зонасына өзгертудің нәтижесінде уақыт белгісін уақыт зонасымен бірге көрсететін жолды қайтарады. timestampMask ()Макростық функциясы шығару жүйесін жиектеуде қолданыла алатынын ескеріңіз. toUTC ( жол_өрнегі ) Мысалы: # toUTC ( '2005-11-01 12:00:00.000-05:00' ) # Нәтижесі: 2005-11-01 17:00:00.000000000-00:00 Мысалы: # timestampMask( toUTC ( '2005-11-01 12:00:00.000-05:00' ) ; 'yyyy-mm-dd hh:mm:ss.ff3+hh:mm' ) # Нәтижесі: 2005-11-01 17:00:00.000-00:00 Мысалы: # toUTC ( $current_timestamp ) # Нәтижесі: 2005-11-01 17:00:00.000000000-00:00 Жиымнан көшірме элементтерді жояды. Элементтер тәртібі сақталады. unique ( жиым_өрнегі ) # csv ( unique ( array ( 's3'; 'a'; 's3'; 'x' ) ) ) # Нәтижесі: 's3', 'a', 'x' URL-өткен дәлелдерді кодтайды. Бұл функция XML жол байланысын көрсеткен кезде қолайлы. urlencode ( prompt ( 'userValue' ) ) urlencode ( prompt ( 'some_val' ) ) %27testValue%27 simple case Бұл макростық құрылым қарапайым іске үлгі болып табылады, құрамына іс, case, when, then, else және end функциялары кіреді. Ескерту макрос құрастыруы тек DQM режимінде ғана қолдау көрсетіледі. CASE <өрнек> WHEN <literal> THEN <өрнек> [ELSE <өрнек>] END Мысалы: #CASE prompt ('pDateRange','token') WHEN 'Current Week' THEN '[PR Current Week]' ELSE '[PR Prior Week]' END# Нәтижесі: [PR Current Week]
Бұғаттау функциялары Бұл тізім жиынтық мүшелерімен қатынасу үшін қолданылатын функцияларды қамтиды, әдетте олар Анализдер Студиясыныі мәтінінде орналасқан. "максимум_сандық_өрнек" + "сандық_өрнек_толып_кетуі" өрнегіне арналған орнатуларында табылған бірінші мүшелерді қайтарады. Егер "максимум_сандық_өрнек" + "сандық_өрнек_толып_кетуі" өрнегі асып кетсе, онда мүшелердің максималды саны ғана қайтарылады. максимум_сандық_өрнек өрнегінде көрсетілгеннен де көп бірнеше ғана мүшесі бар жиынтық үшін сандық_өрнек_толып_кетуі өрнегі кішкене жиынтықтың қосымша мүшелерін еңгізуге рұқсат береді. Егер жиынтық толып кету рұқсат бергеннен де көп мүшесі болса, онда тек қана максимум_сандық_өрнек өрнегінің мүшелері қайтарылады. _firstFromSet ( жинақ_өрнегі ; максимум_сандық_өрнек ; сандық_өрнек_толып_кетуі ) _firstFromSet ( [great_outdoors_company].[Products].[Products].[Product line] , 2 , 8 ) Нәтижесі: Өнім жолы жиынтығының бес мүшесін қайтарады. Бірінші екі мүше максимал арқылы қайтарылды және келесі үш мүшесі толып кету ретінде қайтарылды. Туристтік жабдық Гольф жабдығы Тауға шығатын жабдық Сыртқы қауіпсіздік Жеке жабдықтар _firstFromSet ( [great_outdoors_company].[Products].[Products].[Product line] , 2 , 2 ) Нәтижесі: Саяхатқа арналған Құрал жабдық, Гольф Құрал жабдығы "жинақ_өрнегі" өрнегінің өлшемі "сандық_өрнек" өрнегінен де үлкен болса, "мүше_өрнегі" өрнегін қамтитын жинақты қайтарады; яғни, Егер "жинақ_өрнегі" өрнегіндегі мүшелер саны "сандық_өрнек" өрнегінде көрсетілгеннен көбірек болса, онда жаңа мүше жалпыланады. _remainderSet ( мүше_өрнегі; жинақ_өрнегі ; сандық_өрнек ) _remainderSet ( мүше ( жиынтығы ( currentMeasure [great_outdoors_company] ішінде орнату.[Products].[Products].[Өнім желісі] ) , 'Өнім жиынтығы' , 'Өнім жиынтығы' , [great_outdoors_company].[Products].[Өнім] ) , [great_outdoors_company].[Products].[Products].[Өнім желісі] , 1 ) Нәтижесі: Саны Өнім Статистикасына сатылды