3 SQL::Abstract::Manual::Specification
7 These are the examples for the AST
11 The following are example SQL statements and the AST that would represent each
12 one. The SQL used is from the MySQL dialect.
20 ast_version => 0.0001,
23 type => 'SelectComponent',
33 =item * SELECT NOW() AS time FROM dual AS duality
37 ast_version => 0.0001,
40 type => 'SelectComponent',
52 type => 'TableIdentifier',
61 =item * SELECT 1 FROM foo LEFT OUTER JOIN bar ON ( foo.col1 = bar.col2 )
65 ast_version => 0.0001,
68 type => 'SelectComponent',
81 type => 'TableIdentifier',
88 type => 'TableIdentifier',
100 type => 'Identifier',
105 type => 'Identifier',
114 =item SELECT * FROM foo WHERE name = 'John'
118 ast_version => 0.0001,
121 type => 'SelectComponent',
123 type => 'Identifier',
129 type => 'TableIdentifier',
131 type => 'Identifier',
140 type => 'Identifier',
152 =item SELECT COUNT(*) FROM foo WHERE name = 'John' AND ( title = 'Mr' OR abbrev = 'Dr' )
156 ast_version => 0.0001,
159 type => 'SelectComponent',
165 type => 'Identifier',
173 type => 'TableIdentifier',
175 type => 'Identifier',
188 type => 'Identifier',
207 type => 'Identifier',
222 type => 'Identifier',
223 element1 => 'abbrev',
238 =item SELECT COUNT(DISTINCT(*)) FROM foo WHERE ( name = 'John' AND title = 'Mr' ) OR abbrev = 'Dr'
242 ast_version => 0.0001,
245 type => 'SelectComponent',
255 type => 'Identifier',
265 type => 'TableIdentifier',
267 type => 'Identifier',
284 type => 'Identifier',
299 type => 'Identifier',
316 type => 'Identifier',
317 element1 => 'abbrev',
334 robkinyon: Rob Kinyon C<< <rkinyon@cpan.org> >>
338 You may distribute this code under the same terms as Perl itself.