blob: 6e907884701490ebdaa576b59cb496376f9571a3 [file] [log] [blame]
<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper docs-doc-page docs-version-1.3.0 plugin-docs plugin-id-default docs-doc-id-user-guide/dynamic-variables">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.2.0">
<title data-rh="true">built-in time variable | Apache Linkis</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://linkis.apache.org/docs/1.3.0/user-guide/dynamic-variables"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="1.3.0"><meta data-rh="true" name="docusaurus_tag" content="docs-default-1.3.0"><meta data-rh="true" name="docsearch:version" content="1.3.0"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-1.3.0"><meta data-rh="true" property="og:title" content="built-in time variable | Apache Linkis"><meta data-rh="true" name="description" content="1. Overview"><meta data-rh="true" property="og:description" content="1. Overview"><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://linkis.apache.org/docs/1.3.0/user-guide/dynamic-variables"><link data-rh="true" rel="alternate" href="https://linkis.apache.org/docs/1.3.0/user-guide/dynamic-variables" hreflang="en"><link data-rh="true" rel="alternate" href="https://linkis.apache.org/zh-CN/docs/1.3.0/user-guide/dynamic-variables" hreflang="zh-CN"><link data-rh="true" rel="alternate" href="https://linkis.apache.org/docs/1.3.0/user-guide/dynamic-variables" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://AE29KQB3IA-dsn.algolia.net" crossorigin="anonymous"><link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache Linkis RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Linkis Atom Feed">
<link rel="alternate" type="application/json" href="/blog/feed.json" title="Apache Linkis JSON Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache Linkis" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.05b34e03.css">
<link rel="preload" href="/assets/js/runtime~main.00388f66.js" as="script">
<link rel="preload" href="/assets/js/main.5c2f2a32.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/logo.png" alt="Apache Linkis Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/img/logo.png" alt="Apache Linkis Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">Apache Linkis</b></a><a class="navbar__item navbar__link" href="/download/main">Download</a><a class="navbar__item navbar__link" href="/community/how-to-subscribe">Community</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a class="navbar__item navbar__link" href="/team">Team</a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/user">Users</a><a href="https://docs.qq.com/doc/DUkdTTGhVSlZ0VXVt" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">FAQ</a><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">ASF</a><ul class="dropdown__menu"><li><a href="https://www.apache.org/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Foundation</a></li><li><a href="https://www.apache.org/licenses/" target="_blank" rel="noopener noreferrer" class="dropdown__link">License</a></li><li><a href="https://www.apache.org/events/current-event" target="_blank" rel="noopener noreferrer" class="dropdown__link">Events</a></li><li><a href="https://www.apache.org/security/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Security</a></li><li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Sponsorship</a></li><li><a href="https://privacy.apache.org/policies/privacy-policy-public.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Privacy</a></li><li><a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Thanks</a></li></ul></div></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">Doc</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/docs/latest/about/introduction">1.7.0</a></li><li><a class="dropdown__link" href="/docs/1.6.0/about/introduction">1.6.0</a></li><li><a class="dropdown__link" href="/docs/1.5.0/about/introduction">1.5.0</a></li><li><a class="dropdown__link" href="/docs/1.4.0/about/introduction">1.4.0</a></li><li><a class="dropdown__link" href="/docs/1.8.0/about/introduction">Next(1.8.0)</a></li><li><a class="dropdown__link" href="/versions">All Version</a></li></ul></div><a href="https://github.com/apache/linkis" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link header-github-link" aria-label="GitHub"></a><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link"><svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true" class="iconLanguage_nlXk"><path fill="currentColor" d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></svg>English</a><ul class="dropdown__menu"><li><a href="/docs/1.3.0/user-guide/dynamic-variables" target="_self" rel="noopener noreferrer" class="dropdown__link dropdown__link--active" lang="en">English</a></li><li><a href="/zh-CN/docs/1.3.0/user-guide/dynamic-variables" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="zh-CN">简体中文</a></li></ul></div><div class="searchBox_ZlJk"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20" aria-hidden="true"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0 docsWrapper_BCFX"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebar_njMd"><nav class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/1.3.0/introduction">Introduction</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/1.3.0/release">Version Overview</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/deployment/deploy-quick">Deployment</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" aria-expanded="true" href="/docs/1.3.0/user-guide/overview">User Guide</a></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/overview">Overview</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/how-to-use">How to Use</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/sdk-manual">Linkis Client SDK</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/linkiscli-manual">Linkis-Cli Manual</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/udf">UDF Manual</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/console-manual">Console Manual</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/datasource-client">Data Source Client SDK</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/docs/1.3.0/user-guide/dynamic-variables">built-in time variable</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/datasource-manual">Data Source Manual</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.3.0/user-guide/sso-with-redis">Session Supports Redis Shared Storage</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/engine-usage/overview">Engine Usage</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/api/overview">API</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/table/udf-table">Table Structure</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/architecture/overview">Architecture</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/development/build">Development</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/upgrade/upgrade-from-0.X-to-1.0-guide">Upgrade Guide</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.3.0/tuning-and-troubleshooting/overview">Tuning And Troubleshooting</a></div></li></ul></nav></div></aside><main class="docMainContainer_gTbr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="theme-doc-version-banner alert alert--warning margin-bottom--md" role="alert"><div>This is documentation for <!-- -->Apache Linkis<!-- --> <b>1.3.0</b>, which is no longer actively maintained.</div><div class="margin-top--md">For up-to-date documentation, see the <b><a href="/docs/latest/user-guide/dynamic-variables">latest version</a></b> (<!-- -->1.7.0<!-- -->).</div></div><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_OVgt"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">User Guide</span><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">built-in time variable</span><meta itemprop="position" content="2"></li></ul></nav><span class="theme-doc-version-badge badge badge--secondary">Version: 1.3.0</span><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>built-in time variable</h1></header><h2 class="anchor anchorWithStickyNavbar_LWe7" id="1-overview">1. Overview<a class="hash-link" href="#1-overview" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="need">need<a class="hash-link" href="#need" title="Direct link to heading"></a></h3><ol><li>The user hopes that Linkis can provide some public variables and then replace them during execution. For example, the user runs the same SQL in batches every day, and needs to specify the partition time of the previous day. Writing based on SQL will be more complicated if the system provides a run_date variable It will be very convenient to use.</li><li>The user hopes that Linkis supports date pattern calculation, supports writing variables such as &amp;{YYYY-MM-DD} in the code to calculate time variables</li><li>The user wants to define variables by himself, such as setting a float variable, and then use it in the code</li></ol><h3 class="anchor anchorWithStickyNavbar_LWe7" id="target">Target<a class="hash-link" href="#target" title="Direct link to heading"></a></h3><ol><li>Support variable replacement of task code</li><li>Support custom variables, support users to define custom variables in scripts and task parameters submitted to Linkis, support simple +, - and other calculations</li><li>Preset system variables: run_date, run_month, run_today and other system variables</li><li>Support date pattern variable, support +, - operation of pattern</li></ol><p>The specific technical architecture can refer to:
<a href="https://linkis.apache.org/docs/latest/architecture/commons/variable/" target="_blank" rel="noopener noreferrer">Linkis Custom Variables</a></p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="2-custom-variable-function-introduction">2 Custom variable function introduction<a class="hash-link" href="#2-custom-variable-function-introduction" title="Direct link to heading"></a></h2><p> <!-- --> <!-- --> <!-- --> <!-- --> <!-- -->The variable types supported by Linkis are divided into custom variables and system built-in variables. The internal variables are pre-defined by Linkis and can be used directly. Then different variable types support different calculation formats: String supports +, integers and decimals support +-*/, and dates support +-.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="21-built-in-variables">2.1 Built-in variables<a class="hash-link" href="#21-built-in-variables" title="Direct link to heading"></a></h3><p>Currently supported built-in variables are as follows:
(The variable values in the following table take 20240229 in leap year as a special date as an example)</p><table><thead><tr><th>variable name</th><th>variable type</th><th>variable meaning</th><th>variable value example</th></tr></thead><tbody><tr><td>run<!-- -->_<!-- -->date</td><td>String</td><td>Data statistics time (users can set it themselves, the default setting is the day before the current time), if you execute yesterday’s data today, it will be yesterday’s time, the format is yyyyMMdd</td><td>20240229</td></tr><tr><td>run<!-- -->_<!-- -->date<!-- -->_<!-- -->std</td><td>String</td><td>Data statistics time (standard date format), if yesterday’s data is executed today, it is yesterday’s time, the format is yyyy-MM-dd</td><td>2024-02-29</td></tr><tr><td>run_today</td><td>String</td><td>The day after run_date (data statistics time), the format is yyyyMMdd</td><td>20240301</td></tr><tr><td>run_today_std</td><td>String</td><td>The day after run_date (data statistics time) (standard format), the format is yyyy-MM-dd</td><td>2024-03-01</td></tr><tr><td>run_mon</td><td>String</td><td>The month of run_date, the format is yyyyMM</td><td>202402</td></tr><tr><td>run_mon_std</td><td>String</td><td>The month of run_date (standard format), the format is yyyy-MM</td><td>2024-02</td></tr><tr><td>run<!-- -->_<!-- -->month<!-- -->_<!-- -->begin</td><td>String</td><td>The first day of the month where the data statistics time is located, the format is yyyyMMdd</td><td>20240201</td></tr><tr><td>run<!-- -->_<!-- -->month<!-- -->_<!-- -->begin<!-- -->_<!-- -->std</td><td>String</td><td>The first day of the month where run_date is located (standard date format), the format is yyyy-MM-dd</td><td>2024-02-01</td></tr><tr><td>run_month_now_begin</td><td>String</td><td>the first day of the previous month where run_today is located, the format is yyyyMMdd</td><td>20240201</td></tr><tr><td>run_month_now_begin_std</td><td>String</td><td>The first day of the previous month where run_today is located (standard format), the format is yyyy-MM-dd</td><td>2024-02-01</td></tr><tr><td>run<!-- -->_<!-- -->month<!-- -->_<!-- -->end</td><td>String</td><td>The last day of the month where run_date belongs, in the format of yyyyMMdd</td><td>20240229</td></tr><tr><td>run<!-- -->_<!-- -->month<!-- -->_<!-- -->end<!-- -->_<!-- -->std</td><td>String</td><td>The last day of the month of run_date (standard date format), the format is yyyy-MM-dd</td><td>2024-02-29</td></tr><tr><td>run_month_now_end</td><td>String</td><td>the last day of the previous month where run_today is located, the format is yyyyMMdd</td><td>20240229</td></tr><tr><td>run_month_now_end_std</td><td>String</td><td>The last day of the previous month where run_today is located (standard date format), the format is yyyy-MM-dd</td><td>2024-02-29</td></tr><tr><td>run_quarter_begin</td><td>String</td><td>The first day of the quarter where run_date belongs, the format is yyyyMMdd</td><td>20240101</td></tr><tr><td>run_quarter_end</td><td>String</td><td>The last day of the quarter where run_date is located, in the format of yyyyMMdd</td><td>20240331</td></tr><tr><td>run_half_year_begin</td><td>String</td><td>The first day of the half year where run_date is located, the format is yyyyMMdd</td><td>20240101</td></tr><tr><td>run_half_year_end</td><td>String</td><td>The last day of the half year where run_date is located, the format is yyyyMMdd</td><td>20240630</td></tr><tr><td>run_year_begin</td><td>String</td><td>The first day of the year where run_date is located, the format is yyyyMMdd</td><td>20240101</td></tr><tr><td>run_year_end</td><td>String</td><td>The last day of the year where run_date is located, the format is yyyyMMdd</td><td>20241231</td></tr><tr><td>run_quarter_begin_std</td><td>String</td><td>The first day of the quarter where run_date belongs (standard format), the format is yyyy-MM-dd</td><td>2024-01-01</td></tr><tr><td>run_quarter_end_std</td><td>String</td><td>The last day of the quarter where run_date belongs (standard format), the format is yyyy-MM-dd</td><td>2024-03-31</td></tr><tr><td>run_half_year_begin_std</td><td>String</td><td>The first day of the half year where run_date is located (standard format), the format is yyyy-MM-dd</td><td>2024-01-01</td></tr><tr><td>run_half_year_end_std</td><td>String</td><td>The last day of the half year where run_date is located (standard format), the format is yyyy-MM-dd</td><td>2024-06-30</td></tr><tr><td>run_year_begin_std</td><td>String</td><td>The first day of the year where run_date is located (standard format), the format is yyyy-MM-dd</td><td>2024-01-01</td></tr><tr><td>run_year_end_std</td><td>String</td><td>The last day of the year of run_date (standard format), the format is yyyy-MM-dd</td><td>2024-12-31</td></tr><tr><td>run_tody_h</td><td>String</td><td>run_today task running time, yyyyMMddHH</td><td>2024030111</td></tr><tr><td>run_tody_h_std</td><td>String</td><td>The running time of the run_today task yyyy-MM-dd HH</td><td>2024-03-01 11</td></tr></tbody></table><p>details:</p><ol><li>run_date is a date variable that comes with the core, and supports user-defined dates. If not specified, it defaults to the day before the current system time.</li><li>Definition of other derived built-in date variables: other date built-in variables are calculated relative to run_date. Once run_date changes, the values of other variables will also change automatically. Other date variables do not support setting initial values and can only be modified by modifying run_date .</li><li>The built-in variables support richer usage scenarios: ${run_date-1} is the day before run_data; ${run_month_begin-1} is the first day of the previous month of run_month_begin, where -1 means minus one month.</li></ol><p>Take sql as an example:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">--@set run_date=20240229</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">select</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_date}&quot; as run_date,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_date_std}&quot; as run_date_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_today}&quot; as run_today,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_today_std}&quot; as run_today_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_mon}&quot; as run_mon,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_mon_std}&quot; as run_mon_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_begin}&quot; as run_month_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_begin_std}&quot; as run_month_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_now_begin}&quot; as run_month_now_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_now_begin_std}&quot; as run_month_now_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_end}&quot; as run_month_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_end_std}&quot; as run_month_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_now_end}&quot; as run_month_now_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_month_now_end_std}&quot; as run_month_now_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_quarter_begin}&quot; as run_quarter_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_quarter_end}&quot; as run_quarter_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_half_year_begin}&quot; as run_half_year_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_half_year_end}&quot; as run_half_year_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_year_begin}&quot; as run_year_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_year_end}&quot; as run_year_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_quarter_begin_std}&quot; as run_quarter_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_quarter_end_std}&quot; as run_quarter_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_half_year_begin_std}&quot; as run_half_year_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_half_year_end_std}&quot; as run_half_year_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_year_begin_std}&quot; as run_year_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_year_end_std}&quot; as run_year_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_today_h}&quot; as run_tody_h,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;${run_today_h_std}&quot; as run_tody_h_std</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">Compile the replaced content:</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">select </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240229&quot; as run_date,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02-29&quot; as run_date_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240301&quot; as run_today,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-03-01&quot; as run_today_std, </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;202402&quot; as run_mon,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02&quot; as run_mon_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240201&quot; as run_month_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02-01&quot; as run_month_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240201&quot; as run_month_now_begin, </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02-01&quot; as run_month_now_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240229&quot; as run_month_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02-29&quot; as run_month_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240229&quot; as run_month_now_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-02-29&quot; as run_month_now_end_std, </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240101&quot; as run_quarter_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240331&quot; as run_quarter_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240101&quot; as run_half_year_begin,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240630&quot; as run_half_year_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20240101&quot; as run_year_begin, </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;20241231&quot; as run_year_end,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-01-01&quot; as run_quarter_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-03-31&quot; as run_quarter_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-01-01&quot; as run_half_year_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-06-30&quot; as run_half_year_end_std, </span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-01-01&quot; as run_year_begin_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-12-31&quot; as run_year_end_std,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024030111&quot; as run_tody_h,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">&quot;2024-03-01 11&quot; as run_tody_h_std</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="22-custom-variables">2.2 Custom variables<a class="hash-link" href="#22-custom-variables" title="Direct link to heading"></a></h3><p> <!-- --> <!-- --> <!-- --> <!-- --> <!-- -->What are custom variables? User variables that are defined first and used later. User-defined variables temporarily support the definition of strings, integers, and floating-point variables. Strings support the + method, and integers and floating-point numbers support the +-*/ method. User-defined variables do not conflict with the set variable syntax supported by SparkSQL and HQL itself, but the same name is not allowed. How to define and use custom variables? as follows:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">## Defined in the code, specify before the task code</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">sql type definition method:</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">--@set f=20.1</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">The python/Shell type is defined as follows:</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">#@set f=20.1</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">Note: Only one line to define a variable is supported</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>The use is directly used in the code through <code>{varName expression}, such as ${f*2}</code></p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="23-variable-scope">2.3 Variable scope<a class="hash-link" href="#23-variable-scope" title="Direct link to heading"></a></h3><p>Custom variables also have a scope in linkis, and the priority is that the variable defined in the script is greater than the Variable defined in the task parameter and greater than the built-in run_date variable. The task parameters are defined as follows:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">## restful</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">{</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;executionContent&quot;: {&quot;code&quot;: &quot;select \&quot;${f-1}\&quot;;&quot;, &quot;runType&quot;: &quot;sql&quot;},</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;params&quot;: {</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;variable&quot;: {f: &quot;20.1&quot;},</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;configuration&quot;: {</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;runtime&quot;: {</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;linkis.openlookeng.url&quot;:&quot;http://127.0.0.1:9090&quot;</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> }</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> }</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> },</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;source&quot;: {&quot;scriptPath&quot;: &quot;file:///mnt/bdp/hadoop/1.sql&quot;},</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;labels&quot;: {</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;engineType&quot;: &quot;spark-2.4.3&quot;,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;userCreator&quot;: &quot;hadoop-IDE&quot;</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> }</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">}</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">## java SDK</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">JobSubmitAction. builder</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .addExecuteCode(code)</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .setStartupParams(startupMap)</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .setUser(user) //submit user</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .addExecuteUser(user) //execute user</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .setLabels(labels)</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .setVariableMap(varMap) //setVar</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> .build</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="3-date-pattern-variable-introduction">3. Date Pattern variable introduction<a class="hash-link" href="#3-date-pattern-variable-introduction" title="Direct link to heading"></a></h2><h3 class="anchor anchorWithStickyNavbar_LWe7" id="31-features">3.1 Features<a class="hash-link" href="#31-features" title="Direct link to heading"></a></h3><ul><li>Support Pattern format time and users can specify it at will</li><li>Pattern date variables are calculated relative to run_date</li><li>Support ±y/±M/±d/±H etc.</li><li>Among them, +- is to operate on the linkis built-in parameter run_date first, and then replace the pattern field before %. Non-Pattern characters do not support operation and replacement.</li></ul><p>Pattern format comparison table:</p><table><thead><tr><th>Letter</th><th>Date or Time Component</th><th>Presentation</th><th>Examples</th></tr></thead><tbody><tr><td>G</td><td>Era designator</td><td>Text</td><td>AD</td></tr><tr><td>y</td><td>Year</td><td>Year</td><td>1996; 96</td></tr><tr><td>Y</td><td>Week year</td><td>Year</td><td>2009; 09</td></tr><tr><td>M</td><td>Month in year</td><td>Month</td><td>July; Jul; 07</td></tr><tr><td>w</td><td>Week in year</td><td>Number</td><td>27</td></tr><tr><td>W</td><td>Week in month</td><td>Number</td><td>2</td></tr><tr><td>D</td><td>Day in year</td><td>Number</td><td>189</td></tr><tr><td>d</td><td>Day in month</td><td>Number</td><td>10</td></tr><tr><td>F</td><td>Day of week in month</td><td>Number</td><td>2</td></tr><tr><td>E</td><td>Day name in week</td><td>Text</td><td>Tuesday; Tue</td></tr><tr><td>u</td><td>Day number of week (1 = Monday, …, 7 = Sunday)</td><td>Number</td><td>1</td></tr><tr><td>a</td><td>Am/pm marker</td><td>Text</td><td>PM</td></tr><tr><td>H</td><td>Hour in day (0-23)</td><td>Number</td><td>0</td></tr><tr><td>k</td><td>Hour in day (1-24)</td><td>Number</td><td>24</td></tr><tr><td>K</td><td>Hour in am/pm (0-11)</td><td>Number</td><td>0</td></tr><tr><td>h</td><td>Hour in am/pm (1-12)</td><td>Number</td><td>12</td></tr><tr><td>m</td><td>Minute in hour</td><td>Number</td><td>30</td></tr><tr><td>s</td><td>Second in minute</td><td>Number</td><td>55</td></tr><tr><td>S</td><td>Millisecond</td><td>Number</td><td>978</td></tr><tr><td>z</td><td>Time zone</td><td>General time zone</td><td>Pacific Standard Time; PST; GMT-08:00</td></tr><tr><td>Z</td><td>Time zone</td><td>RFC 822 time zone</td><td>-0800</td></tr><tr><td>X</td><td>Time zone</td><td>ISO 8601 time zone</td><td>-08; -0800; -08:00</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="32-date-pattern-variable-example">3.2 Date Pattern variable example<a class="hash-link" href="#32-date-pattern-variable-example" title="Direct link to heading"></a></h3><p>You can define the parameters that need dynamic rendering according to your own preferences/business actual situation</p><table><thead><tr><th>variable</th><th>result</th></tr></thead><tbody><tr><td>&amp;{yyyy-01-01}</td><td>2021-01-01</td></tr><tr><td>&amp;{yyyy-01-01%-2y}</td><td>2019-01-01</td></tr><tr><td>&amp;{yyyy-MM-01%-2M}</td><td>2021-02-01</td></tr><tr><td>&amp;{yyyy-MM-dd%-2d}</td><td>2021-03-31</td></tr><tr><td>&amp;{yyyy MM ----- HH%-1H}</td><td>2021 04 ----- 14</td></tr><tr><td>&amp;{yyyyMMdd%-1d}</td><td>20210401</td></tr><tr><td>&amp;{yyyyMM01%-1M}</td><td>20210301</td></tr><tr><td>&amp;{HH%-1H}</td><td>14</td></tr></tbody></table><h3 class="anchor anchorWithStickyNavbar_LWe7" id="33-date-pattern-variable-usage-examples">3.3 Date Pattern variable usage examples<a class="hash-link" href="#33-date-pattern-variable-usage-examples" title="Direct link to heading"></a></h3><ul><li>Example 1: sql</li></ul><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">SELECT</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">FROM</span><span class="token plain"> hive</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">tmp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">fund_nav_histories</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">WHERE</span><span class="token plain"> dt </span><span class="token operator">&lt;=</span><span class="token plain"> DATE_FORMAT</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">DATE_ADD</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;day&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token operator">-</span><span class="token number">1</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">DATE</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">Date_parse</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;&amp;{yyyyMMdd%-1d}&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;%Y%m%d&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;%Y%m%d&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>after rendering</p><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">SELECT</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">FROM</span><span class="token plain"> hive</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">tmp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">fund_nav_histories</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">WHERE</span><span class="token plain"> dt </span><span class="token operator">&lt;=</span><span class="token plain"> DATE_FORMAT</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">DATE_ADD</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;day&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token operator">-</span><span class="token number">1</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">DATE</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">Date_parse</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;20220705&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;%Y%m%d&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;%Y%m%d&#x27;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li>Example 2: shell</li></ul><div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">aws s3 </span><span class="token function" style="color:rgb(80, 250, 123)">ls</span><span class="token plain"> s3://***/ads/tmp/dws_member_active_detail_d_20210601_20211231/pt</span><span class="token operator">=</span><span class="token operator">&amp;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">yyyyMMdd%-1d</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain">/</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>after rendering</p><div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">aws s3 </span><span class="token function" style="color:rgb(80, 250, 123)">ls</span><span class="token plain"> s3://***/ads/tmp/dws_member_active_detail_d_20210601_20211231/pt</span><span class="token operator">=</span><span class="token number">20220705</span><span class="token plain">/</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li>Example 3: datax json</li></ul><div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;job&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;setting&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;speed&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;channel&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">1</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;content&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;reader&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;name&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;s3reader&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;parameter&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;bucket&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;**************&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;path&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;ads/tmp/ccass_tm_announcements/&amp;{yyyyMMdd%-1d}/&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;stored&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;parquet&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;compression&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;NONE&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;column&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;index&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">0</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;type&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;int&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;index&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">1</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;type&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;string&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;constant&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;&amp;{yyyyMMdd%-1d}&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;writer&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;name&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;streamwriter&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;parameter&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;print&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>after rendering</p><div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;job&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;setting&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;speed&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;channel&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">1</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;content&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;reader&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;name&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;s3reader&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;parameter&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;bucket&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;**************&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;path&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;ads/tmp/ccass_tm_announcements/20220705/&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;stored&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;parquet&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;compression&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;NONE&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;column&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;index&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">0</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;type&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;int&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;index&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">1</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;type&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;string&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;constant&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;20220705&quot;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;writer&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;name&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;streamwriter&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;parameter&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;print&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><ul><li>Example 4:python</li></ul><div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">print</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token operator">&amp;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">yyyyMMdd</span><span class="token operator">%</span><span class="token operator">-</span><span class="token plain">1d</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>after rendering</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain"> 20220705</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/apache/linkis-website/edit/dev/versioned_docs/version-1.3.0/user-guide/dynamic-variables.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages navigation"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/1.3.0/user-guide/datasource-client"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Data Source Client SDK</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/1.3.0/user-guide/datasource-manual"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Data Source Manual</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#1-overview" class="table-of-contents__link toc-highlight">1. Overview</a><ul><li><a href="#need" class="table-of-contents__link toc-highlight">need</a></li><li><a href="#target" class="table-of-contents__link toc-highlight">Target</a></li></ul></li><li><a href="#2-custom-variable-function-introduction" class="table-of-contents__link toc-highlight">2 Custom variable function introduction</a><ul><li><a href="#21-built-in-variables" class="table-of-contents__link toc-highlight">2.1 Built-in variables</a></li><li><a href="#22-custom-variables" class="table-of-contents__link toc-highlight">2.2 Custom variables</a></li><li><a href="#23-variable-scope" class="table-of-contents__link toc-highlight">2.3 Variable scope</a></li></ul></li><li><a href="#3-date-pattern-variable-introduction" class="table-of-contents__link toc-highlight">3. Date Pattern variable introduction</a><ul><li><a href="#31-features" class="table-of-contents__link toc-highlight">3.1 Features</a></li><li><a href="#32-date-pattern-variable-example" class="table-of-contents__link toc-highlight">3.2 Date Pattern variable example</a></li><li><a href="#33-date-pattern-variable-usage-examples" class="table-of-contents__link toc-highlight">3.3 Date Pattern variable usage examples</a></li></ul></li></ul></div></div></div></div></main></div></div><footer class="footer"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Linkis</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/docs/latest/about/introduction">Document</a></li><li class="footer__item"><a class="footer__link-item" href="/faq/main">FAQ</a></li><li class="footer__item"><a href="https://github.com/apache/linkis/releases" target="_blank" rel="noopener noreferrer" class="footer__link-item">Releases</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/apache/linkis" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub</a></li><li class="footer__item"><a href="https://github.com/apache/linkis/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">Issue Tracker</a></li><li class="footer__item"><a href="https://github.com/apache/linkis/pulls" target="_blank" rel="noopener noreferrer" class="footer__link-item">Pull Requests</a></li></ul></div><div class="col footer__col"><div class="footer__title">Subscribe Mailing List</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/community/how-to-subscribe">How to Subscribe</a></li><li class="footer__item"><a href="mailto:dev-subscribe@linkis.apache.org" target="_blank" rel="noopener noreferrer" class="footer__link-item">Subscribe Mail</a></li><li class="footer__item"><a href="https://lists.apache.org/list.html?dev@linkis.apache.org" target="_blank" rel="noopener noreferrer" class="footer__link-item">Mail Archive</a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright"><div><img style="height:50px" alt="Apache Software Foundation" src="/img/incubator-logo.svg"><p style="color: #999999; padding: 0 20px 30px;font-weight:400;text-align:left">Apache Linkis is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p><p></p>
<p style="padding: 0 20px 30px;color: #999999;font-weight: 400;"> Copyright © 2025 The Apache Software Foundation. Licensed under the Apache License, Version 2.0. Apache Linkis, Apache Incubator, Apache, the Apache feather logo, the Apache Linkis logo and the Apache Incubator project logo are trademarks of The Apache Software Foundation.</p>
<div></div></div></div></div></div></footer></div>
<script src="/assets/js/runtime~main.00388f66.js"></script>
<script src="/assets/js/main.5c2f2a32.js"></script>
</body>
</html>