-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathcreate-table-as.html
136 lines (123 loc) · 7.08 KB
/
create-table-as.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>8.7. CREATE TABLE AS — Presto 0.190 Documentation</title>
<link rel="stylesheet" href="../_static/presto.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
VERSION: '0.190',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="top" title="Presto 0.190 Documentation" href="../index.html" />
<link rel="up" title="8. SQL Statement Syntax" href="../sql.html" />
<link rel="next" title="8.8. CREATE VIEW" href="create-view.html" />
<link rel="prev" title="8.6. CREATE TABLE" href="create-table.html" />
</head>
<body role="document">
<div class="header">
<h1 class="heading"><a href="../index.html">
<span>Presto 0.190 Documentation</span></a></h1>
<h2 class="heading"><span>8.7. CREATE TABLE AS</span></h2>
</div>
<div class="topnav">
<p class="nav">
<span class="left">
« <a href="create-table.html">8.6. CREATE TABLE</a>
</span>
<span class="right">
<a href="create-view.html">8.8. CREATE VIEW</a> »
</span>
</p>
</div>
<div class="content">
<div class="section" id="create-table-as">
<h1>8.7. CREATE TABLE AS</h1>
<div class="section" id="synopsis">
<h2>Synopsis</h2>
<div class="highlight-none"><div class="highlight"><pre><span></span>CREATE TABLE [ IF NOT EXISTS ] table_name [ ( column_alias, ... ) ]
[ COMMENT table_comment ]
[ WITH ( property_name = expression [, ...] ) ]
AS query
[ WITH [ NO ] DATA ]
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description</h2>
<p>Create a new table containing the result of a <a class="reference internal" href="select.html"><span class="doc">SELECT</span></a> query.
Use <a class="reference internal" href="create-table.html"><span class="doc">CREATE TABLE</span></a> to create an empty table.</p>
<p>The optional <code class="docutils literal"><span class="pre">IF</span> <span class="pre">NOT</span> <span class="pre">EXISTS</span></code> clause causes the error to be
suppressed if the table already exists.</p>
<p>The optional <code class="docutils literal"><span class="pre">WITH</span></code> clause can be used to set properties
on the newly created table. To list all available table
properties, run the following query:</p>
<div class="highlight-sql"><div class="highlight"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="k">system</span><span class="p">.</span><span class="n">metadata</span><span class="p">.</span><span class="n">table_properties</span>
</pre></div>
</div>
</div>
<div class="section" id="examples">
<h2>Examples</h2>
<p>Create a new table <code class="docutils literal"><span class="pre">orders_column_aliased</span></code> with the results of a query and the given column names:</p>
<div class="highlight-sql"><div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="n">orders_column_aliased</span> <span class="p">(</span><span class="n">order_date</span><span class="p">,</span> <span class="n">total_price</span><span class="p">)</span>
<span class="k">AS</span>
<span class="k">SELECT</span> <span class="n">orderdate</span><span class="p">,</span> <span class="n">totalprice</span>
<span class="k">FROM</span> <span class="n">orders</span>
</pre></div>
</div>
<p>Create a new table <code class="docutils literal"><span class="pre">orders_by_date</span></code> that summarizes <code class="docutils literal"><span class="pre">orders</span></code>:</p>
<div class="highlight-sql"><div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="n">orders_by_date</span>
<span class="k">COMMENT</span> <span class="s1">'Summary of orders by date'</span>
<span class="k">WITH</span> <span class="p">(</span><span class="n">format</span> <span class="o">=</span> <span class="s1">'ORC'</span><span class="p">)</span>
<span class="k">AS</span>
<span class="k">SELECT</span> <span class="n">orderdate</span><span class="p">,</span> <span class="k">sum</span><span class="p">(</span><span class="n">totalprice</span><span class="p">)</span> <span class="k">AS</span> <span class="n">price</span>
<span class="k">FROM</span> <span class="n">orders</span>
<span class="k">GROUP</span> <span class="k">BY</span> <span class="n">orderdate</span>
</pre></div>
</div>
<p>Create the table <code class="docutils literal"><span class="pre">orders_by_date</span></code> if it does not already exist:</p>
<div class="highlight-sql"><div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="k">IF</span> <span class="k">NOT</span> <span class="k">EXISTS</span> <span class="n">orders_by_date</span> <span class="k">AS</span>
<span class="k">SELECT</span> <span class="n">orderdate</span><span class="p">,</span> <span class="k">sum</span><span class="p">(</span><span class="n">totalprice</span><span class="p">)</span> <span class="k">AS</span> <span class="n">price</span>
<span class="k">FROM</span> <span class="n">orders</span>
<span class="k">GROUP</span> <span class="k">BY</span> <span class="n">orderdate</span>
</pre></div>
</div>
<p>Create a new <code class="docutils literal"><span class="pre">empty_nation</span></code> table with the same schema as <code class="docutils literal"><span class="pre">nation</span></code> and no data:</p>
<div class="highlight-sql"><div class="highlight"><pre><span></span><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="n">empty_nation</span> <span class="k">AS</span>
<span class="k">SELECT</span> <span class="o">*</span>
<span class="k">FROM</span> <span class="n">nation</span>
<span class="k">WITH</span> <span class="k">NO</span> <span class="k">DATA</span>
</pre></div>
</div>
</div>
<div class="section" id="see-also">
<h2>See Also</h2>
<p><a class="reference internal" href="create-table.html"><span class="doc">CREATE TABLE</span></a>, <a class="reference internal" href="select.html"><span class="doc">SELECT</span></a></p>
</div>
</div>
</div>
<div class="bottomnav">
<p class="nav">
<span class="left">
« <a href="create-table.html">8.6. CREATE TABLE</a>
</span>
<span class="right">
<a href="create-view.html">8.8. CREATE VIEW</a> »
</span>
</p>
</div>
<div class="footer" role="contentinfo">
</div>
</body>
</html>