72
74
<div id="docs-container">
80
<div id="docs-top-navigation-container" class="body-background">
77
81
<div id="docs-header">
82
<div id="docs-version-header">
83
Release: <span class="version-num">0.9.6</span> | Release Date: June 23, 2014
78
86
<h1>SQLAlchemy 0.9 Documentation</h1>
80
<div id="docs-search">
82
<form class="search" action="../search.html" method="get">
83
<input type="text" name="q" size="18" /> <input type="submit" value="Search" />
84
<input type="hidden" name="check_keywords" value="yes" />
85
<input type="hidden" name="area" value="default" />
89
<div id="docs-version-header">
90
Release: <span class="version-num">0.9.4</span> | Release Date: March 28, 2014
97
<div id="docs-top-navigation">
98
<div id="docs-top-page-control" class="docs-navigation-links">
91
<div id="docs-body-container">
93
<div id="fixed-sidebar" class="withsidebar">
96
<div id="docs-sidebar-popout">
97
<h3><a href="../index.html">SQLAlchemy 0.9 Documentation</a></h3>
99
<p id="sidebar-paginate">
100
<a href="expression_api.html" title="SQL Statements and Expressions API">Up</a> |
102
<a href="sqlelement.html" title="Column Elements and Expressions">Prev</a> |
103
<a href="dml.html" title="Insert, Updates, Deletes">Next</a>
106
<p id="sidebar-topnav">
107
<a href="../index.html">Contents</a> |
108
<a href="../genindex.html">Index</a>
111
<div id="sidebar-search">
112
<form class="search" action="../search.html" method="get">
113
<input type="text" name="q" size="12" /> <input type="submit" value="Search" />
114
<input type="hidden" name="check_keywords" value="yes" />
115
<input type="hidden" name="area" value="default" />
121
<div id="docs-sidebar">
124
Selectables, Tables, FROM objects
101
<a href="sqlelement.html" title="previous chapter">Column Elements and Expressions</a>
104
<a href="dml.html" title="next chapter">Insert, Updates, Deletes</a>
108
<a href="../contents.html">Table of Contents</a> |
109
<a href="../genindex.html">Index</a>
110
| <a href="../_sources/core/selectable.txt">view source
115
<div id="docs-navigation-banner">
116
<a href="../index.html">SQLAlchemy 0.9 Documentation</a>
117
» <a href="index.html" title="SQLAlchemy Core">SQLAlchemy Core</a>
118
» <a href="expression_api.html" title="SQL Statements and Expressions API">SQL Statements and Expressions API</a>
120
Selectables, Tables, FROM objects
125
Selectables, Tables, FROM objects
132
<div id="docs-body-container">
134
<div id="docs-sidebar">
135
<h3><a href="../index.html">Table of Contents</a></h3>
137
128
<li><a class="reference internal" href="#">Selectables, Tables, FROM objects</a></li>
141
<h4>Previous Topic</h4>
143
<a href="sqlelement.html" title="previous chapter">Column Elements and Expressions</a>
147
<a href="dml.html" title="next chapter">Insert, Updates, Deletes</a>
151
<h4>Quick Search</h4>
153
<form class="search" action="../search.html" method="get">
154
<input type="text" name="q" size="18" /> <input type="submit" value="Search" />
155
<input type="hidden" name="check_keywords" value="yes" />
156
<input type="hidden" name="area" value="default" />
162
140
<div id="docs-body" class="withsidebar" >
164
142
<div class="section" id="selectables-tables-from-objects">
401
379
Use this parameter to explicitly specify “from” objects which are not
402
380
automatically locatable. This could include
403
381
<a class="reference internal" href="metadata.html#sqlalchemy.schema.Table" title="sqlalchemy.schema.Table"><tt class="xref py py-class docutils literal"><span class="pre">Table</span></tt></a> objects that aren’t otherwise present,
404
or <a class="reference internal" href="#sqlalchemy.sql.expression.Join" title="sqlalchemy.sql.expression.Join"><tt class="xref py py-class docutils literal"><span class="pre">Join</span></tt></a> objects whose presence will supercede that of the
382
or <a class="reference internal" href="#sqlalchemy.sql.expression.Join" title="sqlalchemy.sql.expression.Join"><tt class="xref py py-class docutils literal"><span class="pre">Join</span></tt></a> objects whose presence will supersede that of the
405
383
<a class="reference internal" href="metadata.html#sqlalchemy.schema.Table" title="sqlalchemy.schema.Table"><tt class="xref py py-class docutils literal"><span class="pre">Table</span></tt></a> objects already located in the other
407
385
<li><span class="target" id="sqlalchemy.sql.expression.select.params.autocommit"></span><strong>autocommit</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.select.params.autocommit">¶</a> – Deprecated. Use .execution_options(autocommit=<True|False>)
652
630
VALUES clause. This typically refers to Sequence execution but may
653
631
also refer to any server-side default generation function
654
632
associated with a primary key <cite>Column</cite>.</li>
633
<li><span class="target" id="sqlalchemy.sql.expression.Alias.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.Alias.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
634
that will be passed through to the compiler within all “visit”
635
methods. This allows any custom flag to be passed through to
636
a custom compilation construct, for example. It is also used
637
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
638
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
640
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
642
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
644
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
646
<div class="versionadded">
647
<p><span>New in version 0.9.0.</span></p>
655
<div class="admonition seealso">
656
<p class="first admonition-title">See also</p>
657
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
662
661
<dl class="method">
1046
1045
VALUES clause. This typically refers to Sequence execution but may
1047
1046
also refer to any server-side default generation function
1048
1047
associated with a primary key <cite>Column</cite>.</li>
1048
<li><span class="target" id="sqlalchemy.sql.expression.CompoundSelect.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.CompoundSelect.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
1049
that will be passed through to the compiler within all “visit”
1050
methods. This allows any custom flag to be passed through to
1051
a custom compilation construct, for example. It is also used
1052
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
1053
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
1055
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
1057
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
1059
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
1061
<div class="versionadded">
1062
<p><span>New in version 0.9.0.</span></p>
1070
<div class="admonition seealso">
1071
<p class="first admonition-title">See also</p>
1072
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
1056
1076
<dl class="method">
1202
1222
<span class="n">parts_alias</span> <span class="o">=</span> <span class="n">parts</span><span class="o">.</span><span class="n">alias</span><span class="p">()</span>
1203
1223
<span class="n">included_parts</span> <span class="o">=</span> <span class="n">included_parts</span><span class="o">.</span><span class="n">union_all</span><span class="p">(</span>
1204
1224
<span class="n">select</span><span class="p">([</span>
1225
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
1205
1226
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">,</span>
1206
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
1207
1227
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span>
1208
1228
<span class="p">])</span><span class="o">.</span>
1209
1229
<span class="n">where</span><span class="p">(</span><span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">incl_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
1213
1233
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
1214
1234
<span class="n">func</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span><span class="p">)</span><span class="o">.</span>
1215
1235
<span class="n">label</span><span class="p">(</span><span class="s">'total_quantity'</span><span class="p">)</span>
1216
<span class="p">])</span><span class="o">.</span> <span class="n">select_from</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">,</span>
1217
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">))</span><span class="o">.</span>\
1236
<span class="p">])</span><span class="o">.</span>\
1218
1237
<span class="n">group_by</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
1220
1239
<span class="n">result</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">statement</span><span class="p">)</span><span class="o">.</span><span class="n">fetchall</span><span class="p">()</span></pre></div>
1620
1639
VALUES clause. This typically refers to Sequence execution but may
1621
1640
also refer to any server-side default generation function
1622
1641
associated with a primary key <cite>Column</cite>.</li>
1642
<li><span class="target" id="sqlalchemy.sql.expression.CTE.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.CTE.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
1643
that will be passed through to the compiler within all “visit”
1644
methods. This allows any custom flag to be passed through to
1645
a custom compilation construct, for example. It is also used
1646
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
1647
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
1649
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
1651
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
1653
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
1655
<div class="versionadded">
1656
<p><span>New in version 0.9.0.</span></p>
1664
<div class="admonition seealso">
1665
<p class="first admonition-title">See also</p>
1666
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
1630
1670
<dl class="method">
2305
2345
VALUES clause. This typically refers to Sequence execution but may
2306
2346
also refer to any server-side default generation function
2307
2347
associated with a primary key <cite>Column</cite>.</li>
2348
<li><span class="target" id="sqlalchemy.sql.expression.GenerativeSelect.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.GenerativeSelect.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
2349
that will be passed through to the compiler within all “visit”
2350
methods. This allows any custom flag to be passed through to
2351
a custom compilation construct, for example. It is also used
2352
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
2353
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
2355
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
2357
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
2359
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
2361
<div class="versionadded">
2362
<p><span>New in version 0.9.0.</span></p>
2370
<div class="admonition seealso">
2371
<p class="first admonition-title">See also</p>
2372
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
2315
2376
<dl class="method">
2461
2522
<span class="n">parts_alias</span> <span class="o">=</span> <span class="n">parts</span><span class="o">.</span><span class="n">alias</span><span class="p">()</span>
2462
2523
<span class="n">included_parts</span> <span class="o">=</span> <span class="n">included_parts</span><span class="o">.</span><span class="n">union_all</span><span class="p">(</span>
2463
2524
<span class="n">select</span><span class="p">([</span>
2525
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
2464
2526
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">,</span>
2465
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
2466
2527
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span>
2467
2528
<span class="p">])</span><span class="o">.</span>
2468
2529
<span class="n">where</span><span class="p">(</span><span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">incl_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
2472
2533
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
2473
2534
<span class="n">func</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span><span class="p">)</span><span class="o">.</span>
2474
2535
<span class="n">label</span><span class="p">(</span><span class="s">'total_quantity'</span><span class="p">)</span>
2475
<span class="p">])</span><span class="o">.</span> <span class="n">select_from</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">,</span>
2476
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">))</span><span class="o">.</span>\
2536
<span class="p">])</span><span class="o">.</span>\
2477
2537
<span class="n">group_by</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
2479
2539
<span class="n">result</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">statement</span><span class="p">)</span><span class="o">.</span><span class="n">fetchall</span><span class="p">()</span></pre></div>
3065
3125
VALUES clause. This typically refers to Sequence execution but may
3066
3126
also refer to any server-side default generation function
3067
3127
associated with a primary key <cite>Column</cite>.</li>
3128
<li><span class="target" id="sqlalchemy.sql.expression.Join.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.Join.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
3129
that will be passed through to the compiler within all “visit”
3130
methods. This allows any custom flag to be passed through to
3131
a custom compilation construct, for example. It is also used
3132
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
3133
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
3135
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
3137
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
3139
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
3141
<div class="versionadded">
3142
<p><span>New in version 0.9.0.</span></p>
3150
<div class="admonition seealso">
3151
<p class="first admonition-title">See also</p>
3152
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
3075
3156
<dl class="method">
3524
3605
VALUES clause. This typically refers to Sequence execution but may
3525
3606
also refer to any server-side default generation function
3526
3607
associated with a primary key <cite>Column</cite>.</li>
3608
<li><span class="target" id="sqlalchemy.sql.expression.Select.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.Select.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
3609
that will be passed through to the compiler within all “visit”
3610
methods. This allows any custom flag to be passed through to
3611
a custom compilation construct, for example. It is also used
3612
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
3613
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
3615
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
3617
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
3619
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
3621
<div class="versionadded">
3622
<p><span>New in version 0.9.0.</span></p>
3630
<div class="admonition seealso">
3631
<p class="first admonition-title">See also</p>
3632
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
3534
3636
<dl class="method">
3783
3885
<span class="n">parts_alias</span> <span class="o">=</span> <span class="n">parts</span><span class="o">.</span><span class="n">alias</span><span class="p">()</span>
3784
3886
<span class="n">included_parts</span> <span class="o">=</span> <span class="n">included_parts</span><span class="o">.</span><span class="n">union_all</span><span class="p">(</span>
3785
3887
<span class="n">select</span><span class="p">([</span>
3888
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
3786
3889
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">,</span>
3787
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
3788
3890
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span>
3789
3891
<span class="p">])</span><span class="o">.</span>
3790
3892
<span class="n">where</span><span class="p">(</span><span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">incl_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
3794
3896
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
3795
3897
<span class="n">func</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span><span class="p">)</span><span class="o">.</span>
3796
3898
<span class="n">label</span><span class="p">(</span><span class="s">'total_quantity'</span><span class="p">)</span>
3797
<span class="p">])</span><span class="o">.</span> <span class="n">select_from</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">,</span>
3798
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">))</span><span class="o">.</span>\
3899
<span class="p">])</span><span class="o">.</span>\
3799
3900
<span class="n">group_by</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
3801
3902
<span class="n">result</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">statement</span><span class="p">)</span><span class="o">.</span><span class="n">fetchall</span><span class="p">()</span></pre></div>
4567
4668
<span class="n">parts_alias</span> <span class="o">=</span> <span class="n">parts</span><span class="o">.</span><span class="n">alias</span><span class="p">()</span>
4568
4669
<span class="n">included_parts</span> <span class="o">=</span> <span class="n">included_parts</span><span class="o">.</span><span class="n">union_all</span><span class="p">(</span>
4569
4670
<span class="n">select</span><span class="p">([</span>
4671
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
4570
4672
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">,</span>
4571
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
4572
4673
<span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span>
4573
4674
<span class="p">])</span><span class="o">.</span>
4574
4675
<span class="n">where</span><span class="p">(</span><span class="n">parts_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">incl_alias</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
4578
4679
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">,</span>
4579
4680
<span class="n">func</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">quantity</span><span class="p">)</span><span class="o">.</span>
4580
4681
<span class="n">label</span><span class="p">(</span><span class="s">'total_quantity'</span><span class="p">)</span>
4581
<span class="p">])</span><span class="o">.</span> <span class="n">select_from</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parts</span><span class="p">,</span>
4582
<span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="o">==</span><span class="n">parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">part</span><span class="p">))</span><span class="o">.</span>\
4682
<span class="p">])</span><span class="o">.</span>\
4583
4683
<span class="n">group_by</span><span class="p">(</span><span class="n">included_parts</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">sub_part</span><span class="p">)</span>
4585
4685
<span class="n">result</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">statement</span><span class="p">)</span><span class="o">.</span><span class="n">fetchall</span><span class="p">()</span></pre></div>
4719
4819
VALUES clause. This typically refers to Sequence execution but may
4720
4820
also refer to any server-side default generation function
4721
4821
associated with a primary key <cite>Column</cite>.</li>
4822
<li><span class="target" id="sqlalchemy.sql.expression.TableClause.compile.params.compile_kwargs"></span><strong>compile_kwargs</strong><a class="paramlink headerlink reference internal" href="#sqlalchemy.sql.expression.TableClause.compile.params.compile_kwargs">¶</a> – <p>optional dictionary of additional parameters
4823
that will be passed through to the compiler within all “visit”
4824
methods. This allows any custom flag to be passed through to
4825
a custom compilation construct, for example. It is also used
4826
for the case of passing the <tt class="docutils literal"><span class="pre">literal_binds</span></tt> flag through:</p>
4827
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">sqlalchemy.sql</span> <span class="kn">import</span> <span class="n">table</span><span class="p">,</span> <span class="n">column</span><span class="p">,</span> <span class="n">select</span>
4829
<span class="n">t</span> <span class="o">=</span> <span class="n">table</span><span class="p">(</span><span class="s">'t'</span><span class="p">,</span> <span class="n">column</span><span class="p">(</span><span class="s">'x'</span><span class="p">))</span>
4831
<span class="n">s</span> <span class="o">=</span> <span class="n">select</span><span class="p">([</span><span class="n">t</span><span class="p">])</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">x</span> <span class="o">==</span> <span class="mi">5</span><span class="p">)</span>
4833
<span class="k">print</span> <span class="n">s</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">compile_kwargs</span><span class="o">=</span><span class="p">{</span><span class="s">"literal_binds"</span><span class="p">:</span> <span class="bp">True</span><span class="p">})</span></pre></div>
4835
<div class="versionadded">
4836
<p><span>New in version 0.9.0.</span></p>
4844
<div class="admonition seealso">
4845
<p class="first admonition-title">See also</p>
4846
<p class="last"><a class="reference internal" href="../faq.html#faq-sql-expression-string"><em>How do I render SQL expressions as strings, possibly with bound parameters inlined?</em></a></p>
4729
4850
<dl class="method">