<html>
<head>
<base href="https://docs.jboss.org/author">
<link rel="stylesheet" href="/author/s/en/2172/19/5/_/styles/combined.css?spaceKey=TEIID&forWysiwyg=true" type="text/css">
</head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
<h2><a href="https://docs.jboss.org/author/display/TEIID/ARRAYTABLE">ARRAYTABLE</a></h2>
<h4>Page <b>edited</b> by <a href="https://docs.jboss.org/author/display/~shawkins">Steven Hawkins</a>
</h4>
<br/>
<h4>Changes (1)</h4>
<div id="page-diffs">
<table class="diff" cellpadding="0" cellspacing="0">
<tr><td class="diff-snipped" >...<br></td></tr>
<tr><td class="diff-unchanged" >ARRAYTABLE is effectively a shortcut for using the [Miscellaneous Functions#array_get|Miscellaneous Functions#array_get] function in a nested table. For example <br> <br></td></tr>
<tr><td class="diff-changed-lines" ><span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">{code:lang=SQL}ARRAYGET(val</span> <span class="diff-added-words"style="background-color: #dfd;">{code:lang=SQL}ARRAYTABLE(val</span> COLUMNS col1 string, col2 integer) AS X{code} <br></td></tr>
<tr><td class="diff-unchanged" > <br>is the same as <br></td></tr>
<tr><td class="diff-snipped" >...<br></td></tr>
</table>
</div> <h4>Full Content</h4>
<div class="notificationGreySide">
<p>The ARRAYTABLE function processes an array input to produce tabular output. The function itself defines what columns it projects. The ARRAYTABLE function is implicitly a nested table and may be correlated to preceding FROM clause entries.</p>
<p>Usage:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: sql; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">
ARRAYTABLE(expression COLUMNS <COLUMN>, ...) AS name
COLUMN := name datatype</pre>
</div></div>
<p>Parameters</p>
<ul>
        <li>expression - the array to process, which should be a java.sql.Array or java array value.<br/>
Syntax Rules:</li>
</ul>
<ul>
        <li>The columns names must be not contain duplicates.</li>
</ul>
<p>Examples</p>
<ul>
        <li>As a nested table:
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: sql; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">select x.* from (call source.invokeMDX('some query')) r, arraytable(r.tuple COLUMNS first string, second bigdecimal) x</pre>
</div></div></li>
</ul>
<p>ARRAYTABLE is effectively a shortcut for using the <a href="/author/display/TEIID/Miscellaneous+Functions#MiscellaneousFunctions-arrayget">Miscellaneous Functions#array_get</a> function in a nested table. For example</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: sql; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">ARRAYTABLE(val COLUMNS col1 string, col2 integer) AS X</pre>
</div></div>
<p>is the same as</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: sql; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">TABLE(SELECT cast(array_get(val, 1) AS string) AS col1, cast(array_get(val, 2) AS integer) AS col2) AS X</pre>
</div></div>
</div>
<div id="commentsSection" class="wiki-content pageSection">
<div style="float: right;" class="grey">
<a href="https://docs.jboss.org/author/users/removespacenotification.action?spaceKey=TEIID">Stop watching space</a>
<span style="padding: 0px 5px;">|</span>
<a href="https://docs.jboss.org/author/users/editmyemailsettings.action">Change email notification preferences</a>
</div>
<a href="https://docs.jboss.org/author/display/TEIID/ARRAYTABLE">View Online</a>
|
<a href="https://docs.jboss.org/author/pages/diffpagesbyversion.action?pageId=18646227&revisedVersion=5&originalVersion=4">View Changes</a>
|
<a href="https://docs.jboss.org/author/display/TEIID/ARRAYTABLE?showComments=true&showCommentArea=true#addcomment">Add Comment</a>
</div>
</div>
</div>
</div>
</div>
</body>
</html>