Skip to main content

diesel/mysql_like/query_builder/
query_fragment_impls.rs

1use crate::expression::operators::Concat;
2use crate::mysql_like::MysqlLikeBackend;
3use crate::query_builder::insert_statement::DefaultValues;
4use crate::query_builder::locking_clause::{ForShare, ForUpdate, NoModifier, NoWait, SkipLocked};
5use crate::query_builder::nodes::StaticQueryFragment;
6use crate::query_builder::upsert::into_conflict_clause::OnConflictSelectWrapper;
7use crate::query_builder::upsert::on_conflict_actions::{DoNothing, DoUpdate};
8use crate::query_builder::upsert::on_conflict_clause::OnConflictValues;
9use crate::query_builder::upsert::on_conflict_target::{ConflictTarget, OnConflictTarget};
10use crate::query_builder::where_clause::NoWhereClause;
11use crate::query_builder::{AstPass, QueryFragment};
12use crate::result::QueryResult;
13use crate::{Column, Table};
14
15#[diagnostic::do_not_recommend]
16impl<DB: MysqlLikeBackend> QueryFragment<DB> for ForUpdate {
17    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
18        out.push_sql(" FOR UPDATE");
19        Ok(())
20    }
21}
22
23#[diagnostic::do_not_recommend]
24impl<DB: MysqlLikeBackend> QueryFragment<DB> for ForShare {
25    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
26        out.push_sql(" FOR SHARE");
27        Ok(())
28    }
29}
30
31#[diagnostic::do_not_recommend]
32impl<DB: MysqlLikeBackend> QueryFragment<DB> for NoModifier {
33    fn walk_ast<'b>(&'b self, _out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
34        Ok(())
35    }
36}
37
38#[diagnostic::do_not_recommend]
39impl<DB: MysqlLikeBackend> QueryFragment<DB> for SkipLocked {
40    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
41        out.push_sql(" SKIP LOCKED");
42        Ok(())
43    }
44}
45
46#[diagnostic::do_not_recommend]
47impl<DB: MysqlLikeBackend> QueryFragment<DB> for NoWait {
48    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
49        out.push_sql(" NOWAIT");
50        Ok(())
51    }
52}
53
54#[diagnostic::do_not_recommend]
55impl<DB: MysqlLikeBackend>
56    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlStyleDefaultValueClause>
57    for DefaultValues
58{
59    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
60        out.push_sql("() VALUES ()");
61        Ok(())
62    }
63}
64
65#[diagnostic::do_not_recommend]
66impl<DB: MysqlLikeBackend, L, R>
67    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlConcatClause> for Concat<L, R>
68where
69    L: QueryFragment<DB>,
70    R: QueryFragment<DB>,
71{
72    fn walk_ast<'b>(
73        &'b self,
74        mut out: crate::query_builder::AstPass<'_, 'b, DB>,
75    ) -> crate::result::QueryResult<()> {
76        out.push_sql("CONCAT(");
77        self.left.walk_ast(out.reborrow())?;
78        out.push_sql(",");
79        self.right.walk_ast(out.reborrow())?;
80        out.push_sql(")");
81        Ok(())
82    }
83}
84
85#[diagnostic::do_not_recommend]
86impl<DB: MysqlLikeBackend, T>
87    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlOnConflictClause> for DoNothing<T>
88where
89    T: Table + StaticQueryFragment,
90    T::Component: QueryFragment<DB>,
91    T::PrimaryKey: DoNothingClauseHelper<DB>,
92{
93    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
94        out.push_sql(" UPDATE ");
95        T::PrimaryKey::walk_ast::<T>(out.reborrow())?;
96        Ok(())
97    }
98}
99
100#[diagnostic::do_not_recommend]
101impl<DB: MysqlLikeBackend, T, Tab>
102    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlOnConflictClause>
103    for DoUpdate<T, Tab>
104where
105    T: QueryFragment<DB>,
106    Tab: Table + StaticQueryFragment,
107    Tab::PrimaryKey: DoNothingClauseHelper<DB>,
108    Tab::Component: QueryFragment<DB>,
109{
110    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
111        out.unsafe_to_cache_prepared();
112        out.push_sql(" UPDATE ");
113        if self.changeset.is_noop(out.backend())? {
114            Tab::PrimaryKey::walk_ast::<Tab>(out.reborrow())?;
115        } else {
116            self.changeset.walk_ast(out.reborrow())?;
117        }
118        Ok(())
119    }
120}
121
122#[diagnostic::do_not_recommend]
123impl<DB: MysqlLikeBackend, Values, Target, Action>
124    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlOnConflictClause>
125    for OnConflictValues<Values, Target, Action, NoWhereClause>
126where
127    Values: QueryFragment<DB>,
128    Target: QueryFragment<DB>,
129    Action: QueryFragment<DB>,
130    NoWhereClause: QueryFragment<DB>,
131{
132    fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
133        self.values.walk_ast(out.reborrow())?;
134        out.push_sql(" ON DUPLICATE KEY");
135        self.target.walk_ast(out.reborrow())?;
136        self.action.walk_ast(out.reborrow())?;
137        self.where_clause.walk_ast(out)?;
138        Ok(())
139    }
140}
141
142/// A marker type signaling that the given `ON CONFLICT` clause
143/// uses Mysql's `ON DUPLICATE KEY` syntax that triggers on
144/// all unique constraints
145///
146/// See [`InsertStatement::on_conflict`](crate::query_builder::InsertStatement::on_conflict)
147/// for examples
148#[derive(#[automatically_derived]
impl ::core::fmt::Debug for DuplicatedKeys {
    #[inline]
    fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
        ::core::fmt::Formatter::write_str(f, "DuplicatedKeys")
    }
}Debug, #[automatically_derived]
impl ::core::marker::Copy for DuplicatedKeys { }Copy, #[automatically_derived]
#[doc(hidden)]
unsafe impl ::core::clone::TrivialClone for DuplicatedKeys { }
#[automatically_derived]
impl ::core::clone::Clone for DuplicatedKeys {
    #[inline]
    fn clone(&self) -> DuplicatedKeys { *self }
}Clone)]
149pub struct DuplicatedKeys;
150
151impl<Tab> OnConflictTarget<Tab> for ConflictTarget<DuplicatedKeys> {}
152
153#[diagnostic::do_not_recommend]
154impl<DB: MysqlLikeBackend>
155    QueryFragment<DB, crate::mysql_like::query_fragments::MysqlOnConflictClause>
156    for ConflictTarget<DuplicatedKeys>
157{
158    fn walk_ast<'b>(&'b self, _out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
159        Ok(())
160    }
161}
162
163#[diagnostic::do_not_recommend]
164impl<DB: MysqlLikeBackend, S> QueryFragment<DB> for OnConflictSelectWrapper<S>
165where
166    S: QueryFragment<DB>,
167{
168    fn walk_ast<'b>(&'b self, out: AstPass<'_, 'b, DB>) -> QueryResult<()> {
169        self.0.walk_ast(out)
170    }
171}
172
173/// This is a helper trait
174/// that provides a fake `DO NOTHING` clause
175/// based on reassigning the possible
176/// composite primary key to itself
177trait DoNothingClauseHelper<DB: MysqlLikeBackend> {
178    fn walk_ast<T>(out: AstPass<'_, '_, DB>) -> QueryResult<()>
179    where
180        T: StaticQueryFragment,
181        T::Component: QueryFragment<DB>;
182}
183
184#[diagnostic::do_not_recommend]
185impl<DB: MysqlLikeBackend, C> DoNothingClauseHelper<DB> for C
186where
187    C: Column,
188{
189    fn walk_ast<T>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()>
190    where
191        T: StaticQueryFragment,
192        T::Component: QueryFragment<DB>,
193    {
194        T::STATIC_COMPONENT.walk_ast(out.reborrow())?;
195        out.push_sql(".");
196        out.push_identifier(C::NAME)?;
197        out.push_sql(" = ");
198        T::STATIC_COMPONENT.walk_ast(out.reborrow())?;
199        out.push_sql(".");
200        out.push_identifier(C::NAME)?;
201        Ok(())
202    }
203}
204
205macro_rules! do_nothing_for_composite_keys {
206    ($(
207        $Tuple:tt {
208            $(($idx:tt) -> $T:ident, $ST:ident, $TT:ident,)+
209        }
210    )+) => {
211        $(
212            impl<DB: MysqlLikeBackend,$($T,)*> DoNothingClauseHelper<DB> for ($($T,)*)
213            where $($T: Column,)*
214            {
215                fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()>
216                where
217                    Table: StaticQueryFragment,
218                    Table::Component: QueryFragment<DB>,
219                {
220                    let mut first = true;
221                    $(
222                        #[allow(unused_assignments)]
223                        if first {
224                            first = false;
225                        } else {
226                            out.push_sql(", ");
227                        }
228                        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
229                        out.push_sql(".");
230                        out.push_identifier($T::NAME)?;
231                        out.push_sql(" = ");
232                        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
233                        out.push_sql(".");
234                        out.push_identifier($T::NAME)?;
235                    )*
236                    Ok(())
237                }
238            }
239        )*
240    }
241}
242
243impl<DB: MysqlLikeBackend, T> DoNothingClauseHelper<DB> for (T,) where
    T: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1> DoNothingClauseHelper<DB> for (T, T1) where
    T: Column, T1: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2> DoNothingClauseHelper<DB> for
    (T, T1, T2) where T: Column, T1: Column, T2: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3) where T: Column, T1: Column, T2: Column, T3: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4) where T: Column, T1: Column, T2: Column, T3: Column,
    T4: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5> DoNothingClauseHelper<DB>
    for (T, T1, T2, T3, T4, T5) where T: Column, T1: Column, T2: Column,
    T3: Column, T4: Column, T5: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6>
    DoNothingClauseHelper<DB> for (T, T1, T2, T3, T4, T5, T6) where T: Column,
    T1: Column, T2: Column, T3: Column, T4: Column, T5: Column, T6: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7>
    DoNothingClauseHelper<DB> for (T, T1, T2, T3, T4, T5, T6, T7) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8>
    DoNothingClauseHelper<DB> for (T, T1, T2, T3, T4, T5, T6, T7, T8) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column, T8: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9>
    DoNothingClauseHelper<DB> for (T, T1, T2, T3, T4, T5, T6, T7, T8, T9)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>
    DoNothingClauseHelper<DB> for (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where T: Column,
    T1: Column, T2: Column, T3: Column, T4: Column, T5: Column, T6: Column,
    T7: Column, T8: Column, T9: Column, T10: Column, T11: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) where T: Column,
    T1: Column, T2: Column, T3: Column, T4: Column, T5: Column, T6: Column,
    T7: Column, T8: Column, T9: Column, T10: Column, T11: Column, T12: Column
    {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column, T8: Column, T9: Column, T10: Column, T11: Column,
    T12: Column, T13: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column, T8: Column, T9: Column, T10: Column, T11: Column,
    T12: Column, T13: Column, T14: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column,
    T16: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17) where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column,
    T16: Column, T17: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18) where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column,
    T16: Column, T17: Column, T18: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19) where T: Column, T1: Column, T2: Column, T3: Column,
    T4: Column, T5: Column, T6: Column, T7: Column, T8: Column, T9: Column,
    T10: Column, T11: Column, T12: Column, T13: Column, T14: Column,
    T15: Column, T16: Column, T17: Column, T18: Column, T19: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20) where T: Column, T1: Column, T2: Column, T3: Column,
    T4: Column, T5: Column, T6: Column, T7: Column, T8: Column, T9: Column,
    T10: Column, T11: Column, T12: Column, T13: Column, T14: Column,
    T15: Column, T16: Column, T17: Column, T18: Column, T19: Column,
    T20: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21) where T: Column, T1: Column, T2: Column,
    T3: Column, T4: Column, T5: Column, T6: Column, T7: Column, T8: Column,
    T9: Column, T10: Column, T11: Column, T12: Column, T13: Column,
    T14: Column, T15: Column, T16: Column, T17: Column, T18: Column,
    T19: Column, T20: Column, T21: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22) where T: Column, T1: Column, T2: Column,
    T3: Column, T4: Column, T5: Column, T6: Column, T7: Column, T8: Column,
    T9: Column, T10: Column, T11: Column, T12: Column, T13: Column,
    T14: Column, T15: Column, T16: Column, T17: Column, T18: Column,
    T19: Column, T20: Column, T21: Column, T22: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23) where T: Column, T1: Column,
    T2: Column, T3: Column, T4: Column, T5: Column, T6: Column, T7: Column,
    T8: Column, T9: Column, T10: Column, T11: Column, T12: Column,
    T13: Column, T14: Column, T15: Column, T16: Column, T17: Column,
    T18: Column, T19: Column, T20: Column, T21: Column, T22: Column,
    T23: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24) where T: Column, T1: Column,
    T2: Column, T3: Column, T4: Column, T5: Column, T6: Column, T7: Column,
    T8: Column, T9: Column, T10: Column, T11: Column, T12: Column,
    T13: Column, T14: Column, T15: Column, T16: Column, T17: Column,
    T18: Column, T19: Column, T20: Column, T21: Column, T22: Column,
    T23: Column, T24: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25) where T: Column, T1: Column,
    T2: Column, T3: Column, T4: Column, T5: Column, T6: Column, T7: Column,
    T8: Column, T9: Column, T10: Column, T11: Column, T12: Column,
    T13: Column, T14: Column, T15: Column, T16: Column, T17: Column,
    T18: Column, T19: Column, T20: Column, T21: Column, T22: Column,
    T23: Column, T24: Column, T25: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26>
    DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) where T: Column,
    T1: Column, T2: Column, T3: Column, T4: Column, T5: Column, T6: Column,
    T7: Column, T8: Column, T9: Column, T10: Column, T11: Column, T12: Column,
    T13: Column, T14: Column, T15: Column, T16: Column, T17: Column,
    T18: Column, T19: Column, T20: Column, T21: Column, T22: Column,
    T23: Column, T24: Column, T25: Column, T26: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26,
    T27> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) where T: Column,
    T1: Column, T2: Column, T3: Column, T4: Column, T5: Column, T6: Column,
    T7: Column, T8: Column, T9: Column, T10: Column, T11: Column, T12: Column,
    T13: Column, T14: Column, T15: Column, T16: Column, T17: Column,
    T18: Column, T19: Column, T20: Column, T21: Column, T22: Column,
    T23: Column, T24: Column, T25: Column, T26: Column, T27: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26,
    T27, T28> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column, T8: Column, T9: Column, T10: Column, T11: Column,
    T12: Column, T13: Column, T14: Column, T15: Column, T16: Column,
    T17: Column, T18: Column, T19: Column, T20: Column, T21: Column,
    T22: Column, T23: Column, T24: Column, T25: Column, T26: Column,
    T27: Column, T28: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26,
    T27, T28, T29> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) where
    T: Column, T1: Column, T2: Column, T3: Column, T4: Column, T5: Column,
    T6: Column, T7: Column, T8: Column, T9: Column, T10: Column, T11: Column,
    T12: Column, T13: Column, T14: Column, T15: Column, T16: Column,
    T17: Column, T18: Column, T19: Column, T20: Column, T21: Column,
    T22: Column, T23: Column, T24: Column, T25: Column, T26: Column,
    T27: Column, T28: Column, T29: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26,
    T27, T28, T29, T30> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column,
    T16: Column, T17: Column, T18: Column, T19: Column, T20: Column,
    T21: Column, T22: Column, T23: Column, T24: Column, T25: Column,
    T26: Column, T27: Column, T28: Column, T29: Column, T30: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T30::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T30::NAME)?;
        Ok(())
    }
}
impl<DB: MysqlLikeBackend, T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,
    T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26,
    T27, T28, T29, T30, T31> DoNothingClauseHelper<DB> for
    (T, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
    T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31)
    where T: Column, T1: Column, T2: Column, T3: Column, T4: Column,
    T5: Column, T6: Column, T7: Column, T8: Column, T9: Column, T10: Column,
    T11: Column, T12: Column, T13: Column, T14: Column, T15: Column,
    T16: Column, T17: Column, T18: Column, T19: Column, T20: Column,
    T21: Column, T22: Column, T23: Column, T24: Column, T25: Column,
    T26: Column, T27: Column, T28: Column, T29: Column, T30: Column,
    T31: Column {
    fn walk_ast<Table>(mut out: AstPass<'_, '_, DB>) -> QueryResult<()> where
        Table: StaticQueryFragment, Table::Component: QueryFragment<DB> {
        let mut first = true;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T1::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T2::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T3::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T4::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T5::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T6::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T7::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T8::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T9::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T10::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T11::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T12::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T13::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T14::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T15::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T16::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T17::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T18::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T19::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T20::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T21::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T22::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T23::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T24::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T25::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T26::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T27::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T28::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T29::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T30::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T30::NAME)?;

        #[allow(unused_assignments)]
        if first { first = false; } else { out.push_sql(", "); }
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T31::NAME)?;
        out.push_sql(" = ");
        Table::STATIC_COMPONENT.walk_ast(out.reborrow())?;
        out.push_sql(".");
        out.push_identifier(T31::NAME)?;
        Ok(())
    }
}crate::for_each_tuple!(do_nothing_for_composite_keys);