diff --git a/.codacy.yml b/.codacy.yml new file mode 100644 index 000000000..d98077f4f --- /dev/null +++ b/.codacy.yml @@ -0,0 +1,3 @@ +--- +exclude_paths: + - "site/**" diff --git a/.github/workflows/sphinx.yml b/.github/workflows/sphinx.yml new file mode 100644 index 000000000..2c2b7f76c --- /dev/null +++ b/.github/workflows/sphinx.yml @@ -0,0 +1,31 @@ +name: Sphinx Pages +on: [push, workflow_dispatch] +permissions: write-all +jobs: + docs: + runs-on: ubuntu-latest + steps: + - uses: actions/setup-python@v4 + - name: Install XSLT Processor + run: sudo apt-get install xsltproc sphinx-common + - name: Install dependencies + run: pip install sphinx_rtd_theme sphinx-book-theme myst_parser sphinx-prompt sphinx_substitution_extensions sphinx_issues sphinx_tabs pygments + - name: Checkout project sources + uses: actions/checkout@v2 + with: + ref: master + fetch-depth: 0 + - name: Setup Gradle + uses: gradle/gradle-build-action@v2 + - name: Run build with Gradle Wrapper + run: gradle sphinx + - name: Deploy + uses: actions/configure-pages@v2 + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + # Upload entire repository + path: 'build/sphinx' + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/.gitignore b/.gitignore index 54f477598..81cbc5c83 100755 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,12 @@ /target /build +# Sphinx Theme related stuff, which shall be downloaded separately +/src/site/sphinx/_themes + +# Exclude the Auto-generated Changelog +/src/site/sphinx/changelog.rst + # Generated by javacc-maven-plugin /bin /src/net diff --git a/README.md b/README.md index 80509ac8d..07479a539 100644 --- a/README.md +++ b/README.md @@ -129,7 +129,7 @@ And this is the dependency declaration in your pom: com.github.jsqlparser jsqlparser - 4.4 + 4.5 ``` diff --git a/build.gradle b/build.gradle index 6001e62e9..032a90e43 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,7 @@ +import se.bjurr.gitchangelog.plugin.gradle.GitChangelogTask + +import java.nio.charset.Charset + plugins { id 'java' id 'maven-publish' @@ -9,47 +13,78 @@ plugins { // download the RR tools which have no Maven Repository id "de.undercouch.download" version "latest.release" + + id "se.bjurr.gitchangelog.git-changelog-gradle-plugin" version "latest.release" } + + group = 'com.github.jsqlparser' -version = '4.6-SNAPSHOT' + +def getVersion = { boolean considerSnapshot -> + def major = 0 + def minor = 0 + def patch = 0 + def commit = "" + def snapshot ="" + new ByteArrayOutputStream().withStream { os -> + exec { + workingDir "$projectDir" + args = [ + "--no-pager" + , "describe" + , "--tags" + , "--always" + , "--dirty=-SNAPSHOT" + ] + executable "git" + standardOutput = os + } + def matcher = os.toString() =~ /jsqlparser-(\d*)\.(\d*)-(\d*)-([a-zA-Z\d]*)/ + matcher.find() + + major = matcher[0][1] + minor = matcher[0][2] + patch = matcher[0][3] + commit = matcher[0][4] + + if (considerSnapshot && os.toString().trim().endsWith("-SNAPSHOT")) { + minor++ + snapshot = "-SNAPSHOT" + } + } + return "${major}.${minor}${snapshot}" +} +version = getVersion(true) + description = 'JSQLParser library' java.sourceCompatibility = JavaVersion.VERSION_1_8 repositories { - gradlePluginPortal() + gradlePluginPortal() mavenLocal() mavenCentral() - maven { - url = uri('https://repo.maven.apache.org/maven2/') - } - - maven { - url "https://plugins.gradle.org/m2/" - } } dependencies { - testImplementation 'commons-io:commons-io:2.11.0' - - // This is needed for the Validation Framework tests - testImplementation 'org.hamcrest:hamcrest-library:+' - - testImplementation 'org.mockito:mockito-core:+' - testImplementation 'org.assertj:assertj-core:+' - testImplementation 'org.apache.commons:commons-lang3:+' + testImplementation 'commons-io:commons-io:2.+' + testImplementation 'org.apache.commons:commons-text:+' + testImplementation 'org.mockito:mockito-core:4.+' + testImplementation 'org.assertj:assertj-core:3.+' + testImplementation 'org.hamcrest:hamcrest-core:2.+' + testImplementation 'org.apache.commons:commons-lang3:3.+' testImplementation 'com.h2database:h2:2.+' // for JaCoCo Reports testImplementation 'org.junit.jupiter:junit-jupiter-api:5.+' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.+' + testImplementation 'org.junit.jupiter:junit-jupiter-params:+' // https://mvnrepository.com/artifact/org.mockito/mockito-junit-jupiter testImplementation 'org.mockito:mockito-junit-jupiter:4.+' - testImplementation 'org.junit.jupiter:junit-jupiter-params:+' // enforce latest version of JavaCC - implementation 'net.java.dev.javacc:javacc:7.0.12' + testImplementation 'net.java.dev.javacc:javacc:7.0.12' javacc 'net.java.dev.javacc:javacc:7.0.12' } @@ -60,13 +95,6 @@ compileJavacc { java { withSourcesJar() withJavadocJar() - - spotbugs - pmd -} - -jacoco { - toolVersion = "0.8.7" } test { @@ -82,8 +110,7 @@ test { '-Djunit.jupiter.execution.parallel.mode.default=concurrent' ] - finalizedBy jacocoTestReport // report is always generated after tests run - finalizedBy jacocoTestCoverageVerification + finalizedBy check } jacocoTestReport { @@ -180,6 +207,8 @@ spotbugs { pmd { consoleOutput = false + //toolVersion = "6.46.0" + sourceSets = [sourceSets.main] // clear the ruleset in order to use configured rules only @@ -196,7 +225,6 @@ pmd { } checkstyle { - toolVersion "9.2" sourceSets = [sourceSets.main, sourceSets.test] configFile =rootProject.file('config/checkstyle/checkstyle.xml') } @@ -209,6 +237,7 @@ tasks.withType(Checkstyle) { } task renderRR() { + dependsOn(compileJavacc) doLast { // these WAR files have been provided as a courtesy by Gunther Rademacher // and belong to the RR - Railroad Diagram Generator Project @@ -221,55 +250,155 @@ task renderRR() { dest "$buildDir/rr/convert.war" overwrite false } - + download.run { src 'http://manticore-projects.com/download/rr.war' dest "$buildDir/rr/rr.war" overwrite false } - - javaexec { - standardOutput = new FileOutputStream("${buildDir}/rr/JSqlParserCC.ebnf") - main="-jar" - args = [ - "$buildDir/rr/convert.war", - "$buildDir/generated/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jj" + + javaexec { + standardOutput = new FileOutputStream("${buildDir}/rr/JSqlParserCC.ebnf") + main = "-jar" + args = [ + "$buildDir/rr/convert.war", + "$buildDir/generated/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jj" ] } - + javaexec { - main="-jar" - args = [ - "$buildDir/rr/rr.war", - "-noepsilon", - "-color:#4D88FF", - "-offset:0", - "-width:800", - //"-png", - //"-out:${buildDir}/rr/JSqlParserCC.zip", - "-out:${buildDir}/rr/JSqlParserCC.xhtml", - "${buildDir}/rr/JSqlParserCC.ebnf" + main = "-jar" + args = [ + "$buildDir/rr/rr.war", + "-noepsilon", + "-color:#4D88FF", + "-offset:0", + "-width:800", + //"-png", + //"-out:${buildDir}/rr/JSqlParserCC.zip", + "-out:${buildDir}/rr/JSqlParserCC.xhtml", + "${buildDir}/rr/JSqlParserCC.ebnf" ] - } + } + + //@todo: a Java based solution may be more appropriate here + exec { + commandLine "sh", "-c", "xsltproc src/main/resources/rr/xhtml2rst.xsl $buildDir/rr/JSqlParserCC.xhtml > src/site/sphinx/syntax.rst" + } } } +task gitChangelogTask(type: GitChangelogTask) { + fromRepo = file("$projectDir") + file = new File("${projectDir}/src/site/sphinx/changelog.rst") + fromRef = "4.0" + //toRef = "1.1"; + templateContent =""" +************************ +Changelog +************************ + + +{{#tags}} +{{#ifMatches name "^Unreleased.*"}} +Latest Changes since |JSQLPARSER_VERSION| +{{/ifMatches}} +{{#ifMatches name "^(?!Unreleased).*"}} +Version {{name}} +{{/ifMatches}} +============================================================= + + {{#issues}} + + {{#commits}} + {{#ifMatches messageTitle "^(?!Merge).*"}} + * **{{{messageTitle}}}** + + {{authorName}}, {{commitDate}} + {{/ifMatches}} + {{/commits}} + + {{/issues}} +{{/tags}} +""" +} + task updateKeywords(type: JavaExec) { group = "Execution" description = "Run the main class with JavaExecTask" classpath = sourceSets.main.runtimeClasspath args = [ - //project(':JSQLParser').file('src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt').absolutePath file('src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt').absolutePath + , file('src/site/sphinx/keywords.rst').absolutePath + ] + main("net.sf.jsqlparser.parser.ParserKeywordsUtils") + + dependsOn(compileJava) +} + +task sphinx(type: Exec) { + dependsOn(gitChangelogTask, renderRR, updateKeywords) + + String PROLOG = """ +.. |_| unicode:: U+00A0 + :trim: + +.. |JSQLPARSER_EMAIL| replace:: support@manticore-projects.com +.. |JSQLPARSER_VERSION| replace:: ${getVersion(false)} +.. |JSQLPARSER_SNAPSHOT_VERSION| replace:: ${getVersion(true)} +.. |JSQLPARSER_STABLE_VERSION_LINK| raw:: html + + ${project.name}-${getVersion(false)}.jar + +.. |JSQLPARSER_SNAPSHOT_VERSION_LINK| raw:: html + + ${project.name}-${getVersion(true)}.jar + +""" + + args = [ + "-Dproject=JSQLParser" + , "-Dcopyright=Tobias Warnecke, 2022" + , "-Dauthor=Tobias Warnecke" + , "-Drelease=${getVersion(false)}" + , "-Drst_prolog=$PROLOG" + , "${projectDir}/src/site/sphinx" + , "${project.buildDir}/sphinx" ] - mainClass = 'net.sf.jsqlparser.parser.ParserKeywordsUtils' + + executable "sphinx-build" + + //store the output instead of printing to the console: + standardOutput = new ByteArrayOutputStream() + + //extension method stopTomcat.output() can be used to obtain the output: + ext.output = { + return standardOutput.toString() + } } publishing { publications { - maven(MavenPublication) { + mavenJava(MavenPublication) { artifactId 'jsqlparser' from(components.java) + versionMapping { + usage('java-api') { + fromResolutionOf('testFixturesRuntimeClasspath') + } + usage('java-runtime') { + fromResolutionResult() + } + } + } + } + repositories { + + maven { + // Username and Password are defined in ~/.gradle/gradle.properties + name "ossrh" + url "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/" + credentials(PasswordCredentials) } } } @@ -277,3 +406,37 @@ publishing { tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } + +task upload(type: Exec) { + dependsOn(build, gitChangelogTask) + + def versionStable = getVersion(false) + + if( findProperty("${project.name}.host")==null ) { + println( +""" +Property \"${project.name}.host\' not found. +Please define \"${project.name}.host\" in the Gradle configuration (e. g. \$HOME/.gradle/gradle.properties. +""" + ) + } else { + + // define the USERNAME and HOST properties in ~/.gradle/gradle.properties + args = ["sftp://${findProperty("${project.name}.username")}@${findProperty("${project.name}.host")}/download"] + + executable "sftp" + + standardInput = new ByteArrayInputStream("""<net.java.dev.javacc javacc 7.0.12 + test @@ -125,6 +126,7 @@ net.sf.jsqlparser.parser.ParserKeywordsUtils src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt + src/site/sphinx/keywords.rst @@ -167,6 +169,16 @@ pmd-java ${pmdVersion} + + net.sourceforge.pmd + pmd-javascript + ${pmdVersion} + + + net.sourceforge.pmd + pmd-jsp + ${pmdVersion} + @@ -250,6 +262,9 @@ false dual_lgpl_ap2 ${project.baseUri}/src/license + + site/sphinx/** + @@ -299,8 +314,8 @@ attach-javadocs - ${javadoc.opts} - net.sf.jsqlparser.parser + ${javadoc.opts} + net.sf.jsqlparser.parser jar diff --git a/src/main/java/net/sf/jsqlparser/Model.java b/src/main/java/net/sf/jsqlparser/Model.java index 3b7378d14..d96535bad 100644 --- a/src/main/java/net/sf/jsqlparser/Model.java +++ b/src/main/java/net/sf/jsqlparser/Model.java @@ -9,10 +9,12 @@ */ package net.sf.jsqlparser; +import java.io.Serializable; + /** *

A marker interface for jsqlparser-model-classes.

*

The datastructure where the sql syntax is represented by a tree consists of {@link Model}'s

*/ -public interface Model { +public interface Model extends Serializable { } diff --git a/src/main/java/net/sf/jsqlparser/expression/Alias.java b/src/main/java/net/sf/jsqlparser/expression/Alias.java index e6718f67a..539d97eb2 100644 --- a/src/main/java/net/sf/jsqlparser/expression/Alias.java +++ b/src/main/java/net/sf/jsqlparser/expression/Alias.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +18,7 @@ import java.util.Optional; import net.sf.jsqlparser.statement.create.table.ColDataType; -public class Alias { +public class Alias implements Serializable { private String name; private boolean useAs = true; @@ -104,7 +105,7 @@ public Alias addAliasColumns(Collection aliasColumns) { return this.withAliasColumns(collection); } - public static class AliasColumn { + public static class AliasColumn implements Serializable { public final String name; public final ColDataType colDataType; diff --git a/src/main/java/net/sf/jsqlparser/expression/JsonFunctionExpression.java b/src/main/java/net/sf/jsqlparser/expression/JsonFunctionExpression.java index c0558bb9e..e23aa2751 100644 --- a/src/main/java/net/sf/jsqlparser/expression/JsonFunctionExpression.java +++ b/src/main/java/net/sf/jsqlparser/expression/JsonFunctionExpression.java @@ -10,6 +10,7 @@ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.Objects; /** @@ -17,7 +18,7 @@ * @author Andreas Reichel */ -public class JsonFunctionExpression { +public class JsonFunctionExpression implements Serializable { private final Expression expression; private boolean usingFormatJson = false; diff --git a/src/main/java/net/sf/jsqlparser/expression/JsonKeyValuePair.java b/src/main/java/net/sf/jsqlparser/expression/JsonKeyValuePair.java index 740b8eaf5..b85274caa 100644 --- a/src/main/java/net/sf/jsqlparser/expression/JsonKeyValuePair.java +++ b/src/main/java/net/sf/jsqlparser/expression/JsonKeyValuePair.java @@ -10,6 +10,7 @@ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.Objects; /** @@ -17,7 +18,7 @@ * @author Andreas Reichel */ -public class JsonKeyValuePair { +public class JsonKeyValuePair implements Serializable { private final String key; private boolean usingKeyKeyword = false; private final Object value; diff --git a/src/main/java/net/sf/jsqlparser/expression/MySQLIndexHint.java b/src/main/java/net/sf/jsqlparser/expression/MySQLIndexHint.java index fc3745774..7360a4b2e 100644 --- a/src/main/java/net/sf/jsqlparser/expression/MySQLIndexHint.java +++ b/src/main/java/net/sf/jsqlparser/expression/MySQLIndexHint.java @@ -9,9 +9,10 @@ */ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.List; -public class MySQLIndexHint { +public class MySQLIndexHint implements Serializable { private final String action; private final String indexQualifier; diff --git a/src/main/java/net/sf/jsqlparser/expression/OrderByClause.java b/src/main/java/net/sf/jsqlparser/expression/OrderByClause.java index 12973d643..7c71ddfa0 100644 --- a/src/main/java/net/sf/jsqlparser/expression/OrderByClause.java +++ b/src/main/java/net/sf/jsqlparser/expression/OrderByClause.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -16,7 +17,7 @@ import java.util.Optional; import net.sf.jsqlparser.statement.select.OrderByElement; -public class OrderByClause { +public class OrderByClause implements Serializable { private List orderByElements; public List getOrderByElements() { diff --git a/src/main/java/net/sf/jsqlparser/expression/PartitionByClause.java b/src/main/java/net/sf/jsqlparser/expression/PartitionByClause.java index 7afb7cec5..0b0f70663 100644 --- a/src/main/java/net/sf/jsqlparser/expression/PartitionByClause.java +++ b/src/main/java/net/sf/jsqlparser/expression/PartitionByClause.java @@ -12,7 +12,9 @@ import net.sf.jsqlparser.expression.operators.relational.ExpressionList; import net.sf.jsqlparser.statement.select.PlainSelect; -public class PartitionByClause { +import java.io.Serializable; + +public class PartitionByClause implements Serializable { ExpressionList partitionExpressionList; boolean brackets = false; diff --git a/src/main/java/net/sf/jsqlparser/expression/SQLServerHints.java b/src/main/java/net/sf/jsqlparser/expression/SQLServerHints.java index 28f497616..84b7c2f38 100644 --- a/src/main/java/net/sf/jsqlparser/expression/SQLServerHints.java +++ b/src/main/java/net/sf/jsqlparser/expression/SQLServerHints.java @@ -9,10 +9,11 @@ */ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.ArrayList; import java.util.List; -public class SQLServerHints { +public class SQLServerHints implements Serializable { private Boolean noLock; private String indexName; diff --git a/src/main/java/net/sf/jsqlparser/expression/WindowDefinition.java b/src/main/java/net/sf/jsqlparser/expression/WindowDefinition.java index 7fb9539bb..b15ec6fcb 100644 --- a/src/main/java/net/sf/jsqlparser/expression/WindowDefinition.java +++ b/src/main/java/net/sf/jsqlparser/expression/WindowDefinition.java @@ -9,11 +9,12 @@ */ package net.sf.jsqlparser.expression; +import java.io.Serializable; import java.util.List; import net.sf.jsqlparser.expression.operators.relational.ExpressionList; import net.sf.jsqlparser.statement.select.OrderByElement; -public class WindowDefinition { +public class WindowDefinition implements Serializable { final OrderByClause orderBy = new OrderByClause(); diff --git a/src/main/java/net/sf/jsqlparser/expression/WindowElement.java b/src/main/java/net/sf/jsqlparser/expression/WindowElement.java index 7270de37a..1213f0236 100644 --- a/src/main/java/net/sf/jsqlparser/expression/WindowElement.java +++ b/src/main/java/net/sf/jsqlparser/expression/WindowElement.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.expression; -public class WindowElement { +import java.io.Serializable; + +public class WindowElement implements Serializable { public enum Type { diff --git a/src/main/java/net/sf/jsqlparser/expression/WindowOffset.java b/src/main/java/net/sf/jsqlparser/expression/WindowOffset.java index ee7ab5cfe..e0a89d279 100644 --- a/src/main/java/net/sf/jsqlparser/expression/WindowOffset.java +++ b/src/main/java/net/sf/jsqlparser/expression/WindowOffset.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.expression; -public class WindowOffset { +import java.io.Serializable; + +public class WindowOffset implements Serializable { public enum Type { diff --git a/src/main/java/net/sf/jsqlparser/expression/WindowRange.java b/src/main/java/net/sf/jsqlparser/expression/WindowRange.java index 6176c0dbb..5c2568258 100644 --- a/src/main/java/net/sf/jsqlparser/expression/WindowRange.java +++ b/src/main/java/net/sf/jsqlparser/expression/WindowRange.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.expression; -public class WindowRange { +import java.io.Serializable; + +public class WindowRange implements Serializable { private WindowOffset start; private WindowOffset end; diff --git a/src/main/java/net/sf/jsqlparser/expression/operators/relational/ExpressionList.java b/src/main/java/net/sf/jsqlparser/expression/operators/relational/ExpressionList.java index a0e87ac54..311fe4da6 100644 --- a/src/main/java/net/sf/jsqlparser/expression/operators/relational/ExpressionList.java +++ b/src/main/java/net/sf/jsqlparser/expression/operators/relational/ExpressionList.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.expression.operators.relational; +import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -21,7 +22,7 @@ /** * A list of expressions, as in SELECT A FROM TAB WHERE B IN (expr1,expr2,expr3) */ -public class ExpressionList implements ItemsList { +public class ExpressionList implements ItemsList, Serializable { private List expressions; private boolean usingBrackets = true; diff --git a/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccess.java b/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccess.java index 46914102b..6b4993ed9 100644 --- a/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccess.java +++ b/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccess.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.parser; -public interface ASTNodeAccess { +import java.io.Serializable; + +public interface ASTNodeAccess extends Serializable { SimpleNode getASTNode(); diff --git a/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccessImpl.java b/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccessImpl.java index 2bf503ac1..b03858982 100644 --- a/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccessImpl.java +++ b/src/main/java/net/sf/jsqlparser/parser/ASTNodeAccessImpl.java @@ -11,7 +11,7 @@ public class ASTNodeAccessImpl implements ASTNodeAccess { - private SimpleNode node; + private transient SimpleNode node; @Override public SimpleNode getASTNode() { diff --git a/src/main/java/net/sf/jsqlparser/parser/ParserKeywordsUtils.java b/src/main/java/net/sf/jsqlparser/parser/ParserKeywordsUtils.java index 0174240e0..4212b2ede 100644 --- a/src/main/java/net/sf/jsqlparser/parser/ParserKeywordsUtils.java +++ b/src/main/java/net/sf/jsqlparser/parser/ParserKeywordsUtils.java @@ -9,25 +9,10 @@ */ package net.sf.jsqlparser.parser; -import org.javacc.jjtree.JJTree; -import org.javacc.parser.JavaCCGlobals; -import org.javacc.parser.JavaCCParser; -import org.javacc.parser.RCharacterList; -import org.javacc.parser.RChoice; -import org.javacc.parser.RJustName; -import org.javacc.parser.ROneOrMore; -import org.javacc.parser.RSequence; -import org.javacc.parser.RStringLiteral; -import org.javacc.parser.RZeroOrMore; -import org.javacc.parser.RZeroOrOne; -import org.javacc.parser.RegularExpression; -import org.javacc.parser.Semanticize; -import org.javacc.parser.Token; - import java.io.File; import java.io.FileNotFoundException; +import java.io.FileWriter; import java.io.IOException; -import java.io.InvalidClassException; import java.nio.charset.Charset; import java.nio.charset.CharsetEncoder; import java.nio.charset.StandardCharsets; @@ -58,134 +43,134 @@ public class ParserKeywordsUtils { | RESTRICTED_SQL2016; + // Classification follows http://www.h2database.com/html/advanced.html#keywords + public final static Object[][] ALL_RESERVED_KEYWORDS = { + { "ABSENT", RESTRICTED_JSQLPARSER } + , { "ALL" , RESTRICTED_SQL2016 } + , { "AND" , RESTRICTED_SQL2016 } + , { "ANY" , RESTRICTED_JSQLPARSER } + , { "AS" , RESTRICTED_SQL2016 } + , { "BETWEEN" , RESTRICTED_SQL2016 } + , { "BOTH" , RESTRICTED_SQL2016 } + , { "CASEWHEN" , RESTRICTED_ALIAS } + , { "CHECK" , RESTRICTED_SQL2016 } + , { "CONNECT" , RESTRICTED_ALIAS } + , { "CONNECT_BY_ROOT" , RESTRICTED_JSQLPARSER } + , { "CONSTRAINT" , RESTRICTED_SQL2016 } + , { "CREATE" , RESTRICTED_ALIAS } + , { "CROSS" , RESTRICTED_SQL2016 } + , { "CURRENT" , RESTRICTED_JSQLPARSER } + , { "DISTINCT" , RESTRICTED_SQL2016 } + , { "DOUBLE" , RESTRICTED_ALIAS } + , { "ELSE" , RESTRICTED_JSQLPARSER } + , { "EXCEPT" , RESTRICTED_SQL2016 } + , { "EXISTS" , RESTRICTED_SQL2016 } + , { "FETCH" , RESTRICTED_SQL2016 } + , { "FOR" , RESTRICTED_SQL2016 } + , { "FORCE" , RESTRICTED_SQL2016 } + , { "FOREIGN" , RESTRICTED_SQL2016 } + , { "FROM" , RESTRICTED_SQL2016 } + , { "FULL", RESTRICTED_SQL2016 } + , { "GROUP", RESTRICTED_SQL2016 } + , { "GROUPING" , RESTRICTED_ALIAS } + , { "HAVING" , RESTRICTED_SQL2016 } + , { "IF" , RESTRICTED_SQL2016 } + , { "IIF" , RESTRICTED_ALIAS } + , { "IGNORE" , RESTRICTED_ALIAS } + , { "ILIKE" , RESTRICTED_SQL2016 } + , { "IN" , RESTRICTED_SQL2016 } + , { "INNER" , RESTRICTED_SQL2016 } + , { "INTERSECT" , RESTRICTED_SQL2016 } + , { "INTERVAL", RESTRICTED_SQL2016 } + , { "INTO" , RESTRICTED_JSQLPARSER } + , { "IS" , RESTRICTED_SQL2016 } + , { "JOIN" , RESTRICTED_JSQLPARSER } + , { "LATERAL" , RESTRICTED_SQL2016 } + , { "LEFT", RESTRICTED_SQL2016 } + , { "LIKE" , RESTRICTED_SQL2016 } + , { "LIMIT" , RESTRICTED_SQL2016 } + , { "MINUS" , RESTRICTED_SQL2016 } + , { "NATURAL" , RESTRICTED_SQL2016 } + , { "NOCYCLE" , RESTRICTED_JSQLPARSER } + , { "NOT", RESTRICTED_SQL2016 } + , { "NULL" , RESTRICTED_SQL2016 } + , { "OFFSET" , RESTRICTED_SQL2016 } + , { "ON" , RESTRICTED_SQL2016 } + , { "ONLY" , RESTRICTED_JSQLPARSER } + , { "OPTIMIZE" , RESTRICTED_ALIAS } + , { "OR" , RESTRICTED_SQL2016 } + , { "ORDER" , RESTRICTED_SQL2016 } + , { "OUTER" , RESTRICTED_JSQLPARSER } + , { "OUTPUT" , RESTRICTED_JSQLPARSER } + , { "OPTIMIZE ", RESTRICTED_JSQLPARSER } + , { "PIVOT" , RESTRICTED_JSQLPARSER } + , { "PROCEDURE" , RESTRICTED_ALIAS } + , { "PUBLIC", RESTRICTED_ALIAS } + , { "RECURSIVE" , RESTRICTED_SQL2016 } + , { "REGEXP" , RESTRICTED_SQL2016 } + , { "RETURNING" , RESTRICTED_JSQLPARSER } + , { "RIGHT" , RESTRICTED_SQL2016 } + , { "SEL" , RESTRICTED_ALIAS } + , { "SELECT" , RESTRICTED_ALIAS } + , { "SEMI" , RESTRICTED_JSQLPARSER } + , { "SET" , RESTRICTED_JSQLPARSER } + , { "SOME" , RESTRICTED_JSQLPARSER } + , { "START" , RESTRICTED_JSQLPARSER } + , { "TABLES" , RESTRICTED_ALIAS } + , { "TOP" , RESTRICTED_SQL2016 } + , { "TRAILING", RESTRICTED_SQL2016 } + , { "UNBOUNDED" , RESTRICTED_JSQLPARSER } + , { "UNION" , RESTRICTED_SQL2016 } + , { "UNIQUE" , RESTRICTED_SQL2016 } + , { "UNPIVOT" , RESTRICTED_JSQLPARSER } + , { "USE" , RESTRICTED_JSQLPARSER } + , { "USING" , RESTRICTED_SQL2016 } + , { "SQL_CACHE" , RESTRICTED_JSQLPARSER } + , { "SQL_CALC_FOUND_ROWS" , RESTRICTED_JSQLPARSER } + , { "SQL_NO_CACHE" , RESTRICTED_JSQLPARSER } + , { "STRAIGHT_JOIN" , RESTRICTED_JSQLPARSER } + , { "VALUE", RESTRICTED_JSQLPARSER } + , { "VALUES" , RESTRICTED_SQL2016 } + , { "VARYING" , RESTRICTED_JSQLPARSER } + , { "WHEN" , RESTRICTED_SQL2016 } + , { "WHERE" , RESTRICTED_SQL2016 } + , { "WINDOW" , RESTRICTED_SQL2016 } + , { "WITH" , RESTRICTED_SQL2016 } + , { "XOR", RESTRICTED_JSQLPARSER } + , { "XMLSERIALIZE" , RESTRICTED_JSQLPARSER } + + // add keywords from the composite token definitions: + // tk= | tk= | tk= + // we will use the composite tokens instead, which are always hit first before the simple keywords + // @todo: figure out a way to remove these composite tokens, as they do more harm than good + , { "SEL", RESTRICTED_JSQLPARSER } + , { "SELECT", RESTRICTED_JSQLPARSER } + + , { "DATE", RESTRICTED_JSQLPARSER } + , { "TIME" , RESTRICTED_JSQLPARSER } + , { "TIMESTAMP", RESTRICTED_JSQLPARSER } + + , { "YEAR", RESTRICTED_JSQLPARSER } + , { "MONTH", RESTRICTED_JSQLPARSER } + , { "DAY", RESTRICTED_JSQLPARSER } + , { "HOUR", RESTRICTED_JSQLPARSER } + , { "MINUTE" , RESTRICTED_JSQLPARSER } + , { "SECOND", RESTRICTED_JSQLPARSER } + + , { "SUBSTR", RESTRICTED_JSQLPARSER } + , { "SUBSTRING", RESTRICTED_JSQLPARSER } + , { "TRIM", RESTRICTED_JSQLPARSER } + , { "POSITION", RESTRICTED_JSQLPARSER } + , { "OVERLAY", RESTRICTED_JSQLPARSER } + + , { "NEXTVAL", RESTRICTED_JSQLPARSER } + + //@todo: Object Names should not start with Hex-Prefix, we shall not find that Token + , { "0x", RESTRICTED_JSQLPARSER } + }; + @SuppressWarnings({"PMD.ExcessiveMethodLength"}) public static List getReservedKeywords(int restriction) { - // Classification follows http://www.h2database.com/html/advanced.html#keywords - Object[][] ALL_RESERVED_KEYWORDS = { - { "ABSENT", RESTRICTED_JSQLPARSER } - , { "ALL" , RESTRICTED_SQL2016 } - , { "AND" , RESTRICTED_SQL2016 } - , { "ANY" , RESTRICTED_JSQLPARSER } - , { "AS" , RESTRICTED_SQL2016 } - , { "BETWEEN" , RESTRICTED_SQL2016 } - , { "BOTH" , RESTRICTED_SQL2016 } - , { "CASEWHEN" , RESTRICTED_ALIAS } - , { "CHECK" , RESTRICTED_SQL2016 } - , { "CONNECT" , RESTRICTED_ALIAS } - , { "CONNECT_BY_ROOT" , RESTRICTED_JSQLPARSER } - , { "CONSTRAINT" , RESTRICTED_SQL2016 } - , { "CREATE" , RESTRICTED_ALIAS } - , { "CROSS" , RESTRICTED_SQL2016 } - , { "CURRENT" , RESTRICTED_JSQLPARSER } - , { "DISTINCT" , RESTRICTED_SQL2016 } - , { "DOUBLE" , RESTRICTED_ALIAS } - , { "ELSE" , RESTRICTED_JSQLPARSER } - , { "EXCEPT" , RESTRICTED_SQL2016 } - , { "EXISTS" , RESTRICTED_SQL2016 } - , { "FETCH" , RESTRICTED_SQL2016 } - , { "FOR" , RESTRICTED_SQL2016 } - , { "FORCE" , RESTRICTED_SQL2016 } - , { "FOREIGN" , RESTRICTED_SQL2016 } - , { "FROM" , RESTRICTED_SQL2016 } - , { "FULL", RESTRICTED_SQL2016 } - , { "GROUP", RESTRICTED_SQL2016 } - , { "GROUPING" , RESTRICTED_ALIAS } - , { "HAVING" , RESTRICTED_SQL2016 } - , { "IF" , RESTRICTED_SQL2016 } - , { "IIF" , RESTRICTED_ALIAS } - , { "IGNORE" , RESTRICTED_ALIAS } - , { "ILIKE" , RESTRICTED_SQL2016 } - , { "IN" , RESTRICTED_SQL2016 } - , { "INNER" , RESTRICTED_SQL2016 } - , { "INTERSECT" , RESTRICTED_SQL2016 } - , { "INTERVAL", RESTRICTED_SQL2016 } - , { "INTO" , RESTRICTED_JSQLPARSER } - , { "IS" , RESTRICTED_SQL2016 } - , { "JOIN" , RESTRICTED_JSQLPARSER } - , { "LATERAL" , RESTRICTED_SQL2016 } - , { "LEFT", RESTRICTED_SQL2016 } - , { "LIKE" , RESTRICTED_SQL2016 } - , { "LIMIT" , RESTRICTED_SQL2016 } - , { "MINUS" , RESTRICTED_SQL2016 } - , { "NATURAL" , RESTRICTED_SQL2016 } - , { "NOCYCLE" , RESTRICTED_JSQLPARSER } - , { "NOT", RESTRICTED_SQL2016 } - , { "NULL" , RESTRICTED_SQL2016 } - , { "OFFSET" , RESTRICTED_SQL2016 } - , { "ON" , RESTRICTED_SQL2016 } - , { "ONLY" , RESTRICTED_JSQLPARSER } - , { "OPTIMIZE" , RESTRICTED_ALIAS } - , { "OR" , RESTRICTED_SQL2016 } - , { "ORDER" , RESTRICTED_SQL2016 } - , { "OUTER" , RESTRICTED_JSQLPARSER } - , { "OUTPUT" , RESTRICTED_JSQLPARSER } - , { "OPTIMIZE ", RESTRICTED_JSQLPARSER } - , { "PIVOT" , RESTRICTED_JSQLPARSER } - , { "PROCEDURE" , RESTRICTED_ALIAS } - , { "PUBLIC", RESTRICTED_ALIAS } - , { "RECURSIVE" , RESTRICTED_SQL2016 } - , { "REGEXP" , RESTRICTED_SQL2016 } - , { "RETURNING" , RESTRICTED_JSQLPARSER } - , { "RIGHT" , RESTRICTED_SQL2016 } - , { "SEL" , RESTRICTED_ALIAS } - , { "SELECT" , RESTRICTED_ALIAS } - , { "SEMI" , RESTRICTED_JSQLPARSER } - , { "SET" , RESTRICTED_JSQLPARSER } - , { "SOME" , RESTRICTED_JSQLPARSER } - , { "START" , RESTRICTED_JSQLPARSER } - , { "TABLES" , RESTRICTED_ALIAS } - , { "TOP" , RESTRICTED_SQL2016 } - , { "TRAILING", RESTRICTED_SQL2016 } - , { "UNBOUNDED" , RESTRICTED_JSQLPARSER } - , { "UNION" , RESTRICTED_SQL2016 } - , { "UNIQUE" , RESTRICTED_SQL2016 } - , { "UNPIVOT" , RESTRICTED_JSQLPARSER } - , { "USE" , RESTRICTED_JSQLPARSER } - , { "USING" , RESTRICTED_SQL2016 } - , { "SQL_CACHE" , RESTRICTED_JSQLPARSER } - , { "SQL_CALC_FOUND_ROWS" , RESTRICTED_JSQLPARSER } - , { "SQL_NO_CACHE" , RESTRICTED_JSQLPARSER } - , { "STRAIGHT_JOIN" , RESTRICTED_JSQLPARSER } - , { "VALUE", RESTRICTED_JSQLPARSER } - , { "VALUES" , RESTRICTED_SQL2016 } - , { "VARYING" , RESTRICTED_JSQLPARSER } - , { "WHEN" , RESTRICTED_SQL2016 } - , { "WHERE" , RESTRICTED_SQL2016 } - , { "WINDOW" , RESTRICTED_SQL2016 } - , { "WITH" , RESTRICTED_SQL2016 } - , { "XOR", RESTRICTED_JSQLPARSER } - , { "XMLSERIALIZE" , RESTRICTED_JSQLPARSER } - - // add keywords from the composite token definitions: - // tk= | tk= | tk= - // we will use the composite tokens instead, which are always hit first before the simple keywords - // @todo: figure out a way to remove these composite tokens, as they do more harm than good - , { "SEL", RESTRICTED_JSQLPARSER } - , { "SELECT", RESTRICTED_JSQLPARSER } - - , { "DATE", RESTRICTED_JSQLPARSER } - , { "TIME" , RESTRICTED_JSQLPARSER } - , { "TIMESTAMP", RESTRICTED_JSQLPARSER } - - , { "YEAR", RESTRICTED_JSQLPARSER } - , { "MONTH", RESTRICTED_JSQLPARSER } - , { "DAY", RESTRICTED_JSQLPARSER } - , { "HOUR", RESTRICTED_JSQLPARSER } - , { "MINUTE" , RESTRICTED_JSQLPARSER } - , { "SECOND", RESTRICTED_JSQLPARSER } - - , { "SUBSTR", RESTRICTED_JSQLPARSER } - , { "SUBSTRING", RESTRICTED_JSQLPARSER } - , { "TRIM", RESTRICTED_JSQLPARSER } - , { "POSITION", RESTRICTED_JSQLPARSER } - , { "OVERLAY", RESTRICTED_JSQLPARSER } - - , { "NEXTVAL", RESTRICTED_JSQLPARSER } - - //@todo: Object Names should not start with Hex-Prefix, we shall not find that Token - , { "0x", RESTRICTED_JSQLPARSER } - }; - ArrayList keywords = new ArrayList<>(); for (Object[] data : ALL_RESERVED_KEYWORDS) { int value = (int) data[1]; @@ -200,18 +185,31 @@ public static List getReservedKeywords(int restriction) { return keywords; } + /** + * + * @param args with: Grammar File, Keyword Documentation File + * @throws Exception + */ public static void main(String[] args) throws Exception { - if (args.length<1) { + if (args.length<2) { throw new IllegalArgumentException("No filename provided as parameters ARGS[0]"); } - File file = new File(args[0]); - if (file.exists() && file.canRead()) { - buildGrammarForRelObjectName(file); - buildGrammarForRelObjectNameWithoutValue(file); + File grammarFile = new File(args[0]); + if (grammarFile.exists() && grammarFile.canRead() && grammarFile.canWrite()) { + buildGrammarForRelObjectName(grammarFile); + buildGrammarForRelObjectNameWithoutValue(grammarFile); } else { throw new FileNotFoundException("Can't read file " + args[0]); } + + File keywordDocumentationFile = new File(args[1]); + keywordDocumentationFile.createNewFile(); + if (keywordDocumentationFile.canWrite()) { + writeKeywordsDocumentationFile(keywordDocumentationFile); + } else { + throw new FileNotFoundException("Can't read file " + args[1]); + } } public static TreeSet getAllKeywordsUsingRegex(File file) throws IOException { @@ -239,117 +237,6 @@ public static TreeSet getAllKeywordsUsingRegex(File file) throws IOExcep return allKeywords; } - private static void addTokenImage(TreeSet allKeywords, RStringLiteral literal) { - if (CHARSET_ENCODER.canEncode(literal.image) && literal.image.matches("[A-Za-z]+")) { - allKeywords.add(literal.image); - } - } - - @SuppressWarnings({"PMD.EmptyIfStmt", "PMD.CyclomaticComplexity"}) - private static void addTokenImage(TreeSet allKeywords, Object o) throws Exception { - if (o instanceof RStringLiteral) { - RStringLiteral literal = (RStringLiteral) o; - addTokenImage(allKeywords, literal); - } else if (o instanceof RChoice) { - RChoice choice = (RChoice) o; - addTokenImage(allKeywords, choice); - } else if (o instanceof RSequence) { - RSequence sequence1 = (RSequence) o; - addTokenImage(allKeywords, sequence1); - } else if (o instanceof ROneOrMore) { - ROneOrMore oneOrMore = (ROneOrMore) o ; - addTokenImage(allKeywords, oneOrMore); - } else if (o instanceof RZeroOrMore) { - RZeroOrMore zeroOrMore = (RZeroOrMore) o ; - addTokenImage(allKeywords, zeroOrMore); - } else if (o instanceof RZeroOrOne) { - RZeroOrOne zeroOrOne = (RZeroOrOne) o ; - addTokenImage(allKeywords, zeroOrOne); - } else if (o instanceof RJustName) { - RJustName zeroOrOne = (RJustName) o ; - addTokenImage(allKeywords, zeroOrOne); - } else if (o instanceof RCharacterList) { - // do nothing, we are not interested in those - } else { - throw new InvalidClassException("Unknown Type: " + o.getClass().getName() + " " + o.toString()); - } - } - - private static void addTokenImage(TreeSet allKeywords, RSequence sequence) throws Exception { - for (Object o: sequence.units) { - addTokenImage(allKeywords, o); - } - } - - private static void addTokenImage(TreeSet allKeywords, ROneOrMore oneOrMore) { - for (Token token: oneOrMore.lhsTokens) { - if (CHARSET_ENCODER.canEncode(token.image)) { - allKeywords.add(token.image); - } - } - } - - private static void addTokenImage(TreeSet allKeywords, RZeroOrMore oneOrMore) { - for (Token token: oneOrMore.lhsTokens) { - if (CHARSET_ENCODER.canEncode(token.image)) { - allKeywords.add(token.image); - } - } - } - - private static void addTokenImage(TreeSet allKeywords, RZeroOrOne oneOrMore) { - for (Token token: oneOrMore.lhsTokens) { - if (CHARSET_ENCODER.canEncode(token.image)) { - allKeywords.add(token.image); - } - } - } - - private static void addTokenImage(TreeSet allKeywords, RJustName oneOrMore) { - for (Token token: oneOrMore.lhsTokens) { - if (CHARSET_ENCODER.canEncode(token.image)) { - allKeywords.add(token.image); - } - } - } - - private static void addTokenImage(TreeSet allKeywords, RChoice choice) throws Exception { - for (Object o: choice.getChoices()) { - addTokenImage(allKeywords, o); - } - } - - public static TreeSet getAllKeywordsUsingJavaCC(File file) throws Exception { - TreeSet allKeywords = new TreeSet<>(); - - Path jjtGrammar = file.toPath(); - Path jjGrammarOutputDir = Files.createTempDirectory("jjgrammer"); - - new JJTree().main(new String[]{ - "-JDK_VERSION=1.8", - "-OUTPUT_DIRECTORY=" + jjGrammarOutputDir.toString(), - jjtGrammar.toString() - }); - Path jjGrammarFile = jjGrammarOutputDir.resolve("JSqlParserCC.jj"); - - JavaCCParser parser = new JavaCCParser(new java.io.FileInputStream(jjGrammarFile.toFile())); - parser.javacc_input(); - - // needed for filling JavaCCGlobals - Semanticize.start(); - - // read all the Token and get the String image - for (Map.Entry item : JavaCCGlobals.rexps_of_tokens.entrySet()) { - addTokenImage(allKeywords, item.getValue()); - } - - //clean up - if (jjGrammarOutputDir.toFile().exists()) { - jjGrammarOutputDir.toFile().delete(); - } - - return allKeywords; - } public static void buildGrammarForRelObjectNameWithoutValue(File file) throws Exception { Pattern methodBlockPattern = Pattern.compile("String\\W*RelObjectNameWithoutValue\\W*\\(\\W*\\)\\W*:\\s*\\{(?:[^}{]+|\\{(?:[^}{]+|\\{[^}{]*})*})*}\\s*\\{(?:[^}{]+|\\{(?:[^}{]+|\\{[^}{]*})*})*}", Pattern.MULTILINE); @@ -410,7 +297,7 @@ public static void buildGrammarForRelObjectName(File file) throws Exception { } public static TreeSet getAllKeywords(File file) throws Exception { - return getAllKeywordsUsingJavaCC(file); + return getAllKeywordsUsingRegex(file); } private static void replaceInFile(File file, Pattern pattern, String replacement) throws IOException { @@ -421,4 +308,45 @@ private static void replaceInFile(File file, Pattern pattern, String replacement content = pattern.matcher(content).replaceAll(replacement); Files.write(file.toPath(), content.getBytes(charset)); } + + public static String rightPadding(String input, char ch, int length) { + return String + .format("%" + (-length) + "s", input) + .replace(' ', ch); + } + + public static void writeKeywordsDocumentationFile(File file) throws IOException { + StringBuilder builder = new StringBuilder(); + builder.append("***********************\n"); + builder.append("Restricted Keywords\n"); + builder.append("***********************\n"); + builder.append("\n"); + + builder.append("The following Keywords are **restricted** in JSQLParser-|JSQLPARSER_VERSION| and must not be used for **Naming Objects**: \n"); + builder.append("\n"); + + builder.append("+----------------------+-------------+-----------+\n"); + builder.append("| **Keyword** | JSQL Parser | SQL:2016 |\n"); + builder.append("+----------------------+-------------+-----------+\n"); + + for (Object[] keywordDefinition : ALL_RESERVED_KEYWORDS) { + builder.append("| ").append(rightPadding(keywordDefinition[0].toString(), ' ', 20)).append(" | "); + + int value = (int) keywordDefinition[1]; + int restriction = RESTRICTED_JSQLPARSER; + String s = (value & restriction) == restriction || (restriction & value) == value ? "Yes" : ""; + builder.append(rightPadding(s, ' ', 11)).append(" | "); + + restriction = RESTRICTED_SQL2016; + s = (value & restriction) == restriction || (restriction & value) == value ? "Yes" : ""; + builder.append(rightPadding(s, ' ', 9)).append(" | "); + + builder.append("\n"); + builder.append("+----------------------+-------------+-----------+\n"); + } + try (FileWriter fileWriter = new FileWriter(file)) { + fileWriter.append(builder); + fileWriter.flush(); + } + } } diff --git a/src/main/java/net/sf/jsqlparser/statement/DeclareStatement.java b/src/main/java/net/sf/jsqlparser/statement/DeclareStatement.java index 4d3f51bf0..282220a1a 100644 --- a/src/main/java/net/sf/jsqlparser/statement/DeclareStatement.java +++ b/src/main/java/net/sf/jsqlparser/statement/DeclareStatement.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -189,7 +190,7 @@ public DeclareStatement addColumnDefinitions(Collection */ -public class OutputClause { +public class OutputClause implements Serializable { List selectItemList; UserVariable tableVariable; Table outputTable; diff --git a/src/main/java/net/sf/jsqlparser/statement/ReferentialAction.java b/src/main/java/net/sf/jsqlparser/statement/ReferentialAction.java index c266acaeb..353dafb03 100644 --- a/src/main/java/net/sf/jsqlparser/statement/ReferentialAction.java +++ b/src/main/java/net/sf/jsqlparser/statement/ReferentialAction.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.statement; -public class ReferentialAction { +import java.io.Serializable; + +public class ReferentialAction implements Serializable { private Type type; private Action action; diff --git a/src/main/java/net/sf/jsqlparser/statement/SetStatement.java b/src/main/java/net/sf/jsqlparser/statement/SetStatement.java index 849cdd440..11b597f83 100644 --- a/src/main/java/net/sf/jsqlparser/statement/SetStatement.java +++ b/src/main/java/net/sf/jsqlparser/statement/SetStatement.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement; +import java.io.Serializable; import java.util.ArrayList; import java.util.List; import net.sf.jsqlparser.expression.Expression; @@ -127,7 +128,7 @@ public void accept(StatementVisitor statementVisitor) { statementVisitor.visit(this); } - static class NameExpr { + static class NameExpr implements Serializable { private Object name; private List expressions; diff --git a/src/main/java/net/sf/jsqlparser/statement/Statements.java b/src/main/java/net/sf/jsqlparser/statement/Statements.java index 363db0795..12a1aaff3 100644 --- a/src/main/java/net/sf/jsqlparser/statement/Statements.java +++ b/src/main/java/net/sf/jsqlparser/statement/Statements.java @@ -9,13 +9,14 @@ */ package net.sf.jsqlparser.statement; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Optional; -public class Statements { +public class Statements implements Serializable { private List statements; diff --git a/src/main/java/net/sf/jsqlparser/statement/alter/AlterExpression.java b/src/main/java/net/sf/jsqlparser/statement/alter/AlterExpression.java index f026b2a93..2902c0833 100644 --- a/src/main/java/net/sf/jsqlparser/statement/alter/AlterExpression.java +++ b/src/main/java/net/sf/jsqlparser/statement/alter/AlterExpression.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.alter; +import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; @@ -28,7 +29,7 @@ import net.sf.jsqlparser.statement.select.PlainSelect; @SuppressWarnings({"PMD.CyclomaticComplexity"}) -public class AlterExpression { +public class AlterExpression implements Serializable { private AlterOperation operation; private String optionalSpecifier; @@ -724,7 +725,7 @@ public ColumnDataType withColumnSpecs(List columnSpecs) { } } - public static final class ColumnDropNotNull { + public static final class ColumnDropNotNull implements Serializable { private final String columnName; private final boolean withNot; @@ -752,7 +753,7 @@ public String toString() { } } - public static final class ColumnDropDefault { + public static final class ColumnDropDefault implements Serializable { private final String columnName; diff --git a/src/main/java/net/sf/jsqlparser/statement/create/table/ColDataType.java b/src/main/java/net/sf/jsqlparser/statement/create/table/ColDataType.java index b1d08ade4..548fc447f 100644 --- a/src/main/java/net/sf/jsqlparser/statement/create/table/ColDataType.java +++ b/src/main/java/net/sf/jsqlparser/statement/create/table/ColDataType.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.create.table; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +18,7 @@ import static java.util.stream.Collectors.joining; import net.sf.jsqlparser.statement.select.PlainSelect; -public class ColDataType { +public class ColDataType implements Serializable { private String dataType; private List argumentsStringList; diff --git a/src/main/java/net/sf/jsqlparser/statement/create/table/ColumnDefinition.java b/src/main/java/net/sf/jsqlparser/statement/create/table/ColumnDefinition.java index 793e5adc2..89b27ee38 100644 --- a/src/main/java/net/sf/jsqlparser/statement/create/table/ColumnDefinition.java +++ b/src/main/java/net/sf/jsqlparser/statement/create/table/ColumnDefinition.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.create.table; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -20,7 +21,7 @@ /** * Globally used definition class for columns. */ -public class ColumnDefinition { +public class ColumnDefinition implements Serializable { private String columnName; private ColDataType colDataType; diff --git a/src/main/java/net/sf/jsqlparser/statement/create/table/Index.java b/src/main/java/net/sf/jsqlparser/statement/create/table/Index.java index f61747fd0..091dfb7af 100644 --- a/src/main/java/net/sf/jsqlparser/statement/create/table/Index.java +++ b/src/main/java/net/sf/jsqlparser/statement/create/table/Index.java @@ -10,6 +10,8 @@ package net.sf.jsqlparser.statement.create.table; import static java.util.stream.Collectors.toList; + +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +19,7 @@ import java.util.Optional; import net.sf.jsqlparser.statement.select.PlainSelect; -public class Index { +public class Index implements Serializable { private String type; private String using; @@ -157,7 +159,7 @@ public Index withName(String name) { return this; } - public static class ColumnParams { + public static class ColumnParams implements Serializable { public final String columnName; public final List params; diff --git a/src/main/java/net/sf/jsqlparser/statement/create/table/RowMovement.java b/src/main/java/net/sf/jsqlparser/statement/create/table/RowMovement.java index 4cb56685f..a9934dcdf 100644 --- a/src/main/java/net/sf/jsqlparser/statement/create/table/RowMovement.java +++ b/src/main/java/net/sf/jsqlparser/statement/create/table/RowMovement.java @@ -9,10 +9,12 @@ */ package net.sf.jsqlparser.statement.create.table; +import java.io.Serializable; + /** * Holds data for the {@code row_movement} clause: https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_7002.htm#i2204697 */ -public class RowMovement { +public class RowMovement implements Serializable { private RowMovementMode mode; diff --git a/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictAction.java b/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictAction.java index efe3161f4..9542a7b75 100644 --- a/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictAction.java +++ b/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictAction.java @@ -13,6 +13,7 @@ import net.sf.jsqlparser.schema.Column; import net.sf.jsqlparser.statement.update.UpdateSet; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Objects; @@ -31,9 +32,11 @@ * */ -public class InsertConflictAction { - private final ArrayList updateSets = new ArrayList<>(); +public class InsertConflictAction implements Serializable { ConflictActionType conflictActionType; + + private final ArrayList updateSets = new ArrayList<>(); + Expression whereExpression; public InsertConflictAction(ConflictActionType conflictActionType) { this.conflictActionType = Objects.requireNonNull(conflictActionType, "The Conflict Action Type is mandatory and must not be Null."); diff --git a/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictTarget.java b/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictTarget.java index 0f8e9808f..4366507d2 100644 --- a/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictTarget.java +++ b/src/main/java/net/sf/jsqlparser/statement/insert/InsertConflictTarget.java @@ -11,6 +11,8 @@ import net.sf.jsqlparser.expression.Expression; +import java.io.Serializable; + /** * https://www.postgresql.org/docs/current/sql-insert.html *
@@ -21,7 +23,7 @@
  * 
* Currently, COLLATE is not supported yet. */ -public class InsertConflictTarget { +public class InsertConflictTarget implements Serializable { String indexColumnName; Expression indexExpression; diff --git a/src/main/java/net/sf/jsqlparser/statement/merge/MergeInsert.java b/src/main/java/net/sf/jsqlparser/statement/merge/MergeInsert.java index c241e8eed..45b21c593 100644 --- a/src/main/java/net/sf/jsqlparser/statement/merge/MergeInsert.java +++ b/src/main/java/net/sf/jsqlparser/statement/merge/MergeInsert.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.merge; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -18,7 +19,7 @@ import net.sf.jsqlparser.schema.Column; import net.sf.jsqlparser.statement.select.PlainSelect; -public class MergeInsert { +public class MergeInsert implements Serializable { private List columns = null; private List values = null; diff --git a/src/main/java/net/sf/jsqlparser/statement/merge/MergeUpdate.java b/src/main/java/net/sf/jsqlparser/statement/merge/MergeUpdate.java index c3e66da12..799e664f4 100644 --- a/src/main/java/net/sf/jsqlparser/statement/merge/MergeUpdate.java +++ b/src/main/java/net/sf/jsqlparser/statement/merge/MergeUpdate.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.merge; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +18,7 @@ import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.schema.Column; -public class MergeUpdate { +public class MergeUpdate implements Serializable { private List columns = null; private List values = null; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Distinct.java b/src/main/java/net/sf/jsqlparser/statement/select/Distinct.java index 8cc89d5fd..6a1113bcd 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Distinct.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Distinct.java @@ -9,13 +9,14 @@ */ package net.sf.jsqlparser.statement.select; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Optional; -public class Distinct { +public class Distinct implements Serializable { private List onSelectItems; private boolean useUnique = false; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/ExpressionListItem.java b/src/main/java/net/sf/jsqlparser/statement/select/ExpressionListItem.java index 2bbe4dea9..0a8fee08c 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/ExpressionListItem.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/ExpressionListItem.java @@ -12,7 +12,9 @@ import net.sf.jsqlparser.expression.Alias; import net.sf.jsqlparser.expression.operators.relational.ExpressionList; -public class ExpressionListItem { +import java.io.Serializable; + +public class ExpressionListItem implements Serializable { private ExpressionList expressionList; private Alias alias; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Fetch.java b/src/main/java/net/sf/jsqlparser/statement/select/Fetch.java index 9f625a162..80468b81b 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Fetch.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Fetch.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.JdbcParameter; -public class Fetch { +import java.io.Serializable; + +public class Fetch implements Serializable { private long rowCount; private JdbcParameter fetchJdbcParameter = null; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/First.java b/src/main/java/net/sf/jsqlparser/statement/select/First.java index 4ef0a3e8b..8a54cdf47 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/First.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/First.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.JdbcParameter; -public class First { +import java.io.Serializable; + +public class First implements Serializable { public enum Keyword { FIRST, diff --git a/src/main/java/net/sf/jsqlparser/statement/select/GroupByElement.java b/src/main/java/net/sf/jsqlparser/statement/select/GroupByElement.java index 15c4f17c5..19400ce12 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/GroupByElement.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/GroupByElement.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.select; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +18,7 @@ import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.expression.operators.relational.ExpressionList; -public class GroupByElement { +public class GroupByElement implements Serializable { // ExpressionList has 'usingBrackets = true' and so we need to switch it off explicitly private ExpressionList groupByExpressions = new ExpressionList().withUsingBrackets(false); private List groupingSets = new ArrayList(); diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Offset.java b/src/main/java/net/sf/jsqlparser/statement/select/Offset.java index 22556d4d8..c9b1337e7 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Offset.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Offset.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.Expression; -public class Offset { +import java.io.Serializable; + +public class Offset implements Serializable { private Expression offsetExpression = null; private String offsetParam = null; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/OptimizeFor.java b/src/main/java/net/sf/jsqlparser/statement/select/OptimizeFor.java index 9c8bbb6d2..3e34219ba 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/OptimizeFor.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/OptimizeFor.java @@ -9,10 +9,12 @@ */ package net.sf.jsqlparser.statement.select; +import java.io.Serializable; + /** * A optimize for clause. */ -public class OptimizeFor { +public class OptimizeFor implements Serializable { private long rowCount; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/OrderByElement.java b/src/main/java/net/sf/jsqlparser/statement/select/OrderByElement.java index df07cf4bb..d9d1c6f85 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/OrderByElement.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/OrderByElement.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.Expression; -public class OrderByElement { +import java.io.Serializable; + +public class OrderByElement implements Serializable { public enum NullOrdering { NULLS_FIRST, diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Pivot.java b/src/main/java/net/sf/jsqlparser/statement/select/Pivot.java index f3318ee5f..f95474854 100755 --- a/src/main/java/net/sf/jsqlparser/statement/select/Pivot.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Pivot.java @@ -9,6 +9,7 @@ */ package net.sf.jsqlparser.statement.select; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -17,7 +18,7 @@ import net.sf.jsqlparser.expression.Alias; import net.sf.jsqlparser.schema.Column; -public class Pivot { +public class Pivot implements Serializable { private List functionItems; private List forColumns; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Skip.java b/src/main/java/net/sf/jsqlparser/statement/select/Skip.java index f7af8f1f4..0031898d4 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Skip.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Skip.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.JdbcParameter; -public class Skip { +import java.io.Serializable; + +public class Skip implements Serializable { private Long rowCount; private JdbcParameter jdbcParameter; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Top.java b/src/main/java/net/sf/jsqlparser/statement/select/Top.java index 1c51cebe3..ad57c2a56 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Top.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Top.java @@ -11,7 +11,9 @@ import net.sf.jsqlparser.expression.Expression; -public class Top { +import java.io.Serializable; + +public class Top implements Serializable { private boolean hasParenthesis = false; private boolean isPercentage = false; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/UnPivot.java b/src/main/java/net/sf/jsqlparser/statement/select/UnPivot.java index 699bfc5ac..3ae7acf50 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/UnPivot.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/UnPivot.java @@ -12,9 +12,10 @@ import net.sf.jsqlparser.expression.Alias; import net.sf.jsqlparser.schema.Column; +import java.io.Serializable; import java.util.List; -public class UnPivot { +public class UnPivot implements Serializable { private boolean includeNulls = false; private boolean includeNullsSpecified = false; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/Wait.java b/src/main/java/net/sf/jsqlparser/statement/select/Wait.java index 5045449a3..0d94e22a0 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/Wait.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/Wait.java @@ -9,7 +9,9 @@ */ package net.sf.jsqlparser.statement.select; -public class Wait { +import java.io.Serializable; + +public class Wait implements Serializable { private long timeout; diff --git a/src/main/java/net/sf/jsqlparser/statement/select/WithIsolation.java b/src/main/java/net/sf/jsqlparser/statement/select/WithIsolation.java index 2fde93e2f..7aef6ef4e 100644 --- a/src/main/java/net/sf/jsqlparser/statement/select/WithIsolation.java +++ b/src/main/java/net/sf/jsqlparser/statement/select/WithIsolation.java @@ -10,7 +10,9 @@ package net.sf.jsqlparser.statement.select; -public class WithIsolation { +import java.io.Serializable; + +public class WithIsolation implements Serializable { private String isolation = "UR"; diff --git a/src/main/java/net/sf/jsqlparser/statement/update/UpdateSet.java b/src/main/java/net/sf/jsqlparser/statement/update/UpdateSet.java index a25df6e5e..3cb26eaea 100644 --- a/src/main/java/net/sf/jsqlparser/statement/update/UpdateSet.java +++ b/src/main/java/net/sf/jsqlparser/statement/update/UpdateSet.java @@ -13,11 +13,12 @@ import net.sf.jsqlparser.expression.operators.relational.ExpressionList; import net.sf.jsqlparser.schema.Column; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Objects; -public class UpdateSet { +public class UpdateSet implements Serializable { protected boolean usingBracketsForColumns = false; protected boolean usingBracketsForValues = false; protected ArrayList columns = new ArrayList<>(); diff --git a/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt b/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt index b30298a6b..1b4bbf833 100644 --- a/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt +++ b/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt @@ -1837,7 +1837,7 @@ String RelObjectNameWithoutValue() : { Token tk = null; } { ( tk= | tk= | tk= | tk= | tk= | tk= | tk= - | tk="ACTION" | tk="ACTIVE" | tk="ADD" | tk="ADVANCE" | tk="ADVISE" | tk="AGAINST" | tk="ALGORITHM" | tk="ALTER" | tk="ANALYZE" | tk="APPLY" | tk="ARCHIVE" | tk="ARRAY" | tk="ASC" | tk="AT" | tk="AUTHORIZATION" | tk="BEGIN" | tk="BINARY" | tk="BIT" | tk="BUFFERS" | tk="BY" | tk="BYTE" | tk="BYTES" | tk="CACHE" | tk="CALL" | tk="CASCADE" | tk="CASE" | tk="CAST" | tk="CHANGE" | tk="CHANGES" | tk="CHAR" | tk="CHARACTER" | tk="CHECKPOINT" | tk="CLOSE" | tk="COLLATE" | tk="COLUMN" | tk="COLUMNS" | tk="COMMENT" | tk="COMMIT" | tk="CONFLICT" | tk="CONSTRAINTS" | tk="COSTS" | tk="CS" | tk="CYCLE" | tk="DATABASE" | tk="DDL" | tk="DECLARE" | tk="DEFAULT" | tk="DEFERRABLE" | tk="DELAYED" | tk="DELETE" | tk="DESC" | tk="DESCRIBE" | tk="DISABLE" | tk="DISCONNECT" | tk="DIV" | tk="DML" | tk="DO" | tk="DROP" | tk="DUMP" | tk="DUPLICATE" | tk="EMIT" | tk="ENABLE" | tk="END" | tk="ESCAPE" | tk="EXCLUDE" | tk="EXEC" | tk="EXECUTE" | tk="EXPLAIN" | tk="EXTENDED" | tk="EXTRACT" | tk="FALSE" | tk="FILTER" | tk="FIRST" | tk="FLUSH" | tk="FN" | tk="FOLLOWING" | tk="FORMAT" | tk="FULLTEXT" | tk="FUNCTION" | tk="GLOBAL" | tk="GRANT" | tk="GUARD" | tk="HISTORY" | tk="HOPPING" | tk="INCLUDE" | tk="INCREMENT" | tk="INDEX" | tk="INSERT" | tk="INTERLEAVE" | tk="INVALIDATE" | tk="ISNULL" | tk="JSON" | tk="KEEP" | tk="KEY" | tk="KEYS" | tk="LAST" | tk="LEADING" | tk="LINK" | tk="LOCAL" | tk="LOCKED" | tk="LOG" | tk="MATCH" | tk="MATCHED" | tk="MATERIALIZED" | tk="MAXVALUE" | tk="MERGE" | tk="MINVALUE" | tk="MODIFY" | tk="MOVEMENT" | tk="NEXT" | tk="NO" | tk="NOCACHE" | tk="NOKEEP" | tk="NOLOCK" | tk="NOMAXVALUE" | tk="NOMINVALUE" | tk="NOORDER" | tk="NOTHING" | tk="NOVALIDATE" | tk="NOWAIT" | tk="NULLS" | tk="OF" | tk="OFF" | tk="OPEN" | tk="OVER" | tk="OVERLAPS" | tk="PARALLEL" | tk="PARENT" | tk="PARTITION" | tk="PATH" | tk="PERCENT" | tk="PLACING" | tk="PRECEDING" | tk="PRECISION" | tk="PRIMARY" | tk="PRIOR" | tk="PURGE" | tk="QUERY" | tk="QUICK" | tk="QUIESCE" | tk="RANGE" | tk="READ" | tk="RECYCLEBIN" | tk="REFERENCES" | tk="REGISTER" | tk="RENAME" | tk="REPLACE" | tk="RESET" | tk="RESTART" | tk="RESTRICT" | tk="RESTRICTED" | tk="RESUMABLE" | tk="RESUME" | tk="RLIKE" | tk="ROLLBACK" | tk="ROW" | tk="ROWS" | tk="RR" | tk="RS" | tk="SAVEPOINT" | tk="SCHEMA" | tk="SEPARATOR" | tk="SEQUENCE" | tk="SESSION" | tk="SETS" | tk="SHOW" | tk="SHUTDOWN" | tk="SIBLINGS" | tk="SIGNED" | tk="SIMILAR" | tk="SIZE" | tk="SKIP" | tk="STORED" | tk="STRING" | tk="SUSPEND" | tk="SWITCH" | tk="SYNONYM" | tk="SYSTEM" | tk="TABLE" | tk="TABLESPACE" | tk="TEMP" | tk="TEMPORARY" | tk="THEN" | tk="TIMEOUT" | tk="TIMESTAMPTZ" | tk="TO" | tk="TRUE" | tk="TRUNCATE" | tk="TUMBLING" | tk="TYPE" | tk="UNLOGGED" | tk="UNQIESCE" | tk="UNQUIESCE" | tk="UNSIGNED" | tk="UPDATE" | tk="UPSERT" | tk="UR" | tk="USER" | tk="VALIDATE" | tk="VERBOSE" | tk="VIEW" | tk="WAIT" | tk="WITHIN" | tk="WITHOUT" | tk="WORK" | tk="XML" | tk="XMLAGG" | tk="XMLTEXT" | tk="YAML" | tk="ZONE" ) + | tk="ACTION" | tk="ACTIVE" | tk="ADD" | tk="ADVANCE" | tk="ADVISE" | tk="AGAINST" | tk="ALGORITHM" | tk="ALTER" | tk="ANALYZE" | tk="APPLY" | tk="ARCHIVE" | tk="ARRAY" | tk="ASC" | tk="AT" | tk="AUTHORIZATION" | tk="BEGIN" | tk="BINARY" | tk="BIT" | tk="BUFFERS" | tk="BY" | tk="BYTE" | tk="BYTES" | tk="CACHE" | tk="CALL" | tk="CASCADE" | tk="CASE" | tk="CAST" | tk="CHANGE" | tk="CHANGES" | tk="CHAR" | tk="CHARACTER" | tk="CHECKPOINT" | tk="CLOSE" | tk="COLLATE" | tk="COLUMN" | tk="COLUMNS" | tk="COMMENT" | tk="COMMIT" | tk="CONFLICT" | tk="COSTS" | tk="CS" | tk="CYCLE" | tk="DATABASE" | tk="DDL" | tk="DECLARE" | tk="DEFAULT" | tk="DEFERRABLE" | tk="DELAYED" | tk="DELETE" | tk="DESC" | tk="DESCRIBE" | tk="DISABLE" | tk="DISCONNECT" | tk="DIV" | tk="DML" | tk="DO" | tk="DROP" | tk="DUMP" | tk="DUPLICATE" | tk="EMIT" | tk="ENABLE" | tk="END" | tk="ESCAPE" | tk="EXCLUDE" | tk="EXEC" | tk="EXECUTE" | tk="EXPLAIN" | tk="EXTENDED" | tk="EXTRACT" | tk="FALSE" | tk="FILTER" | tk="FIRST" | tk="FLUSH" | tk="FN" | tk="FOLLOWING" | tk="FORMAT" | tk="FULLTEXT" | tk="FUNCTION" | tk="GLOBAL" | tk="GRANT" | tk="GUARD" | tk="HISTORY" | tk="HOPPING" | tk="INCLUDE" | tk="INCREMENT" | tk="INDEX" | tk="INSERT" | tk="INTERLEAVE" | tk="ISNULL" | tk="JSON" | tk="KEEP" | tk="KEY" | tk="KEYS" | tk="LAST" | tk="LEADING" | tk="LINK" | tk="LOCAL" | tk="LOCKED" | tk="LOG" | tk="MATCH" | tk="MATCHED" | tk="MATERIALIZED" | tk="MAXVALUE" | tk="MERGE" | tk="MINVALUE" | tk="MODIFY" | tk="MOVEMENT" | tk="NEXT" | tk="NO" | tk="NOCACHE" | tk="NOKEEP" | tk="NOLOCK" | tk="NOMAXVALUE" | tk="NOMINVALUE" | tk="NOORDER" | tk="NOTHING" | tk="NOVALIDATE" | tk="NOWAIT" | tk="NULLS" | tk="OF" | tk="OFF" | tk="OPEN" | tk="OVER" | tk="OVERLAPS" | tk="PARALLEL" | tk="PARENT" | tk="PARTITION" | tk="PATH" | tk="PERCENT" | tk="PLACING" | tk="PRECEDING" | tk="PRECISION" | tk="PRIMARY" | tk="PRIOR" | tk="PURGE" | tk="QUERY" | tk="QUICK" | tk="QUIESCE" | tk="RANGE" | tk="READ" | tk="RECYCLEBIN" | tk="REFERENCES" | tk="REGISTER" | tk="RENAME" | tk="REPLACE" | tk="RESET" | tk="RESTART" | tk="RESTRICT" | tk="RESTRICTED" | tk="RESUMABLE" | tk="RESUME" | tk="RLIKE" | tk="ROLLBACK" | tk="ROW" | tk="ROWS" | tk="RR" | tk="RS" | tk="SAVEPOINT" | tk="SCHEMA" | tk="SEPARATOR" | tk="SEQUENCE" | tk="SESSION" | tk="SETS" | tk="SHOW" | tk="SHUTDOWN" | tk="SIBLINGS" | tk="SIGNED" | tk="SIMILAR" | tk="SIZE" | tk="SKIP" | tk="STORED" | tk="STRING" | tk="SUSPEND" | tk="SWITCH" | tk="SYNONYM" | tk="SYSTEM" | tk="TABLE" | tk="TABLESPACE" | tk="TEMP" | tk="TEMPORARY" | tk="THEN" | tk="TIMEOUT" | tk="TIMESTAMPTZ" | tk="TO" | tk="TRUE" | tk="TRUNCATE" | tk="TUMBLING" | tk="TYPE" | tk="UNLOGGED" | tk="UNQIESCE" | tk="UNSIGNED" | tk="UPDATE" | tk="UPSERT" | tk="UR" | tk="USER" | tk="VALIDATE" | tk="VERBOSE" | tk="VIEW" | tk="WAIT" | tk="WITHIN" | tk="WITHOUT" | tk="WORK" | tk="XML" | tk="XMLAGG" | tk="XMLTEXT" | tk="YAML" | tk="ZONE" ) { return tk.image; } } diff --git a/src/main/resources/rr/xhtml2rst.xsl b/src/main/resources/rr/xhtml2rst.xsl new file mode 100644 index 000000000..a1fbc840d --- /dev/null +++ b/src/main/resources/rr/xhtml2rst.xsl @@ -0,0 +1,95 @@ + + + + + + + + + + + +******************** +Supported SQL Syntax +******************** + +The EBNF and Railroad Diagrams for JSQLParser-|JSQLPARSER_VERSION|. + + + + + + + +====================================================================================================================== + + + +====================================================================================================================== + + + + +.. raw:: html + + + + + + + + + + + + + +
+ + + +
+ + + + Referenced by: +
    + +
+
+ + Not referenced by any. + +
+
+
+ + + + + +
+ + +
  • + + + + + + + + + +
  • +
    +
    \ No newline at end of file diff --git a/src/site/sphinx/_images/JavaAST.png b/src/site/sphinx/_images/JavaAST.png new file mode 100644 index 000000000..30428c551 Binary files /dev/null and b/src/site/sphinx/_images/JavaAST.png differ diff --git a/src/site/sphinx/_static/pygments.css b/src/site/sphinx/_static/pygments.css new file mode 100644 index 000000000..8a76dc576 --- /dev/null +++ b/src/site/sphinx/_static/pygments.css @@ -0,0 +1,74 @@ +pre { line-height: 125%; } +td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight .hll { background-color: #ffffcc } +.highlight { background: #fff; } +.highlight .c { color: #408090; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .ch { color: #408090; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .cpf { color: #408090; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #333333 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0044DD } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #208050 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mb { color: #208050 } /* Literal.Number.Bin */ +.highlight .mf { color: #208050 } /* Literal.Number.Float */ +.highlight .mh { color: #208050 } /* Literal.Number.Hex */ +.highlight .mi { color: #208050 } /* Literal.Number.Integer */ +.highlight .mo { color: #208050 } /* Literal.Number.Oct */ +.highlight .sa { color: #4070a0 } /* Literal.String.Affix */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #06287e } /* Name.Function.Magic */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */ +.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/src/site/sphinx/_static/svg.css b/src/site/sphinx/_static/svg.css new file mode 100644 index 000000000..919a09e2a --- /dev/null +++ b/src/site/sphinx/_static/svg.css @@ -0,0 +1,34 @@ +div .ebnf +{ + display: block; + padding: 2pt; + margin-bottom: 22pt; + font:10px 'Roboto-Mono',monospace; +} + +@namespace "http://www.w3.org/2000/svg"; + .line {fill: none; stroke: #001133; stroke-width: 1;} + .bold-line {stroke: #000714; shape-rendering: crispEdges; stroke-width: 2;} + .thin-line {stroke: #000A1F; shape-rendering: crispEdges;} + .filled {fill: #001133; stroke: none;} + text.terminal {font-family: Roboto, Sans-serif; + font-size: 10px; + fill: #000714; + font-weight: bold; + } + text.nonterminal {font-family: Roboto, Sans-serif; + font-size: 10px; + fill: #00091A; + font-weight: normal; + } + text.regexp {font-family: Roboto, Sans-serif; + font-size: 10px; + fill: #000A1F; + font-weight: normal; + } + rect, circle, polygon {fill: #001133; stroke: #001133;} + rect.terminal {fill: #4D88FF; stroke: #001133; stroke-width: 1;} + rect.nonterminal {fill: #9EBFFF; stroke: #001133; stroke-width: 1;} + rect.text {fill: none; stroke: none;} + polygon.regexp {fill: #C7DAFF; stroke: #001133; stroke-width: 1;} + diff --git a/src/site/sphinx/_static/tabs.css b/src/site/sphinx/_static/tabs.css new file mode 100644 index 000000000..371024886 --- /dev/null +++ b/src/site/sphinx/_static/tabs.css @@ -0,0 +1,89 @@ +.sphinx-tabs { + margin-bottom: 1rem; +} + +[role="tablist"] { + border-bottom: 1px solid rgb(3, 1, 70); +} + +.sphinx-tabs-tab { + position: relative; + font-family: Roboto,sans-serif; + color: rgb(3, 1, 70); + line-height: 24px; + margin: 0; + font-size: 16px; + font-weight: 400; + background-color: rgba(255, 255, 255, 0); + border-radius: 5px 5px 0 0; + border: 0; + padding: 1rem 1.5rem; + margin-bottom: 0; +} + +.sphinx-tabs-tab[aria-selected="true"] { + font-weight: 700; + border: 1px solid rgb(3, 1, 70); + border-bottom: 1px solid white; + margin: -1px; + background-color: white; +} + +.sphinx-tabs-tab:focus { + z-index: 1; + outline-offset: 1px; +} + +.sphinx-tabs-panel { + position: relative; + padding: 1rem; + border: 1px solid rgb(3, 1, 70); + margin: 0px -1px -1px -1px; + border-radius: 0 0 5px 5px; + border-top: 0; + background: white; +} + +.sphinx-tabs-panel.code-tab { + padding: 0.4rem; +} + +.sphinx-tab img { + margin-bottom: 24 px; +} + +/* Dark theme preference styling */ + +@media (prefers-color-scheme: dark) { + body[data-theme="auto"] .sphinx-tabs-panel { + color: white; + background-color: rgb(3, 1, 70); + } + + body[data-theme="auto"] .sphinx-tabs-tab { + color: white; + background-color: rgba(255, 255, 255, 0.05); + } + + body[data-theme="auto"] .sphinx-tabs-tab[aria-selected="true"] { + border-bottom: 1px solid rgb(3, 1, 70); + background-color: rgb(3, 1, 70); + } +} + +/* Explicit dark theme styling */ + +body[data-theme="dark"] .sphinx-tabs-panel { + color: white; + background-color: rgb(3, 1, 70); +} + +body[data-theme="dark"] .sphinx-tabs-tab { + color: white; + background-color: rgba(255, 255, 255, 0.05); +} + +body[data-theme="dark"] .sphinx-tabs-tab[aria-selected="true"] { + border-bottom: 2px solid rgb(3, 1, 70); + background-color: rgb(3, 1, 70); +} diff --git a/src/site/sphinx/changelog.rst b/src/site/sphinx/changelog.rst new file mode 100644 index 000000000..de298411c --- /dev/null +++ b/src/site/sphinx/changelog.rst @@ -0,0 +1,924 @@ + +************************ +Changelog +************************ + + +Latest Changes since |JSQLPARSER_VERSION| +============================================================= + + + * **style: Avoid throwing raw exception types.** + + Andreas Reichel, 2022-12-27 + * **style: Avoid throwing raw exception types.** + + Andreas Reichel, 2022-12-27 + * **doc: Fix Maven Artifact Version** + + Andreas Reichel, 2022-12-27 + * **Update README.md** + + Tobias, 2022-12-27 + * **choir: Merge Master and resolve conflict** + + Andreas Reichel, 2022-12-23 + * **Fix #1686: add support for creating views with "IF NOT EXISTS" clause (#1690)** + + Tomasz Zarna, 2022-12-22 + * **Assorted Fixes #4 (#1676)** + + manticore-projects, 2022-12-22 + * **fix: remove JavaCC dependency** + + Andreas Reichel, 2022-12-17 + * **fix: fix a merge error, brackets** + + Andreas Reichel, 2022-12-12 + * **Choir: Merge Master and resolve conflict** + + Andreas Reichel, 2022-12-11 + * **Choir: Merge Master and resolve conflict** + + Andreas Reichel, 2022-12-11 + * **build: Add Sphinx GitHub Action** + + Andreas Reichel, 2022-12-11 + * **Fixed download war script in the renderRR task (#1659)** + + haha1903, 2022-12-10 + * **Assorted fixes (#1666)** + + manticore-projects, 2022-11-20 + * **Fix parsing statements with multidimensional array PR2 (#1665)** + + manticore-projects, 2022-11-20 + * **update Changelog** + + Andreas Reichel, 2022-11-14 + * **build: avoid PMD/Codacy for Sphinx Documentation** + + Andreas Reichel, 2022-11-07 + * **doc: add a page about actually Reserved Keywords** + + Andreas Reichel, 2022-11-07 + * **build: add the Keywords Documentation file to the task** + + Andreas Reichel, 2022-11-07 + * **build: various fixes to the Maven build file** + + Andreas Reichel, 2022-11-07 + * **fix: Non-serializable field in serializable class** + + Andreas Reichel, 2022-11-06 + * **chore: Merge Main Branch** + + Andreas Reichel, 2022-11-06 + * **removed disabled from Keyword tests and imports** + + Tobias Warneke, 2022-11-02 + * **removed disabled from Keyword tests** + + Tobias Warneke, 2022-11-02 + * **Keywords2: Update whitelisted Keywords (#1653)** + + manticore-projects, 2022-11-02 + * **Enhanced Keywords (#1382)** + + manticore-projects, 2022-10-25 + * **#1610 Support for SKIP LOCKED tokens on SELECT statements (#1649)** + + Lucas Dillmann, 2022-10-25 + * **Assorted fixes (#1646)** + + manticore-projects, 2022-10-16 + * **chore: Make Serializable** + + Andreas Reichel, 2022-10-14 + * **doc: Add the "How to Use" java code** + + Andreas Reichel, 2022-10-14 + * **actualized multiple dependencies** + + Tobias Warneke, 2022-09-28 + * **Bump h2 from 1.4.200 to 2.1.210 (#1639)** + + dependabot[bot], 2022-09-28 + * **Support BigQuery SAFE_CAST (#1622) (#1634)** + + dequn, 2022-09-20 + * **fix: add missing public Getter (#1632)** + + manticore-projects, 2022-09-20 + * **feat: make important Classes Serializable** + + Andreas Reichel, 2022-09-15 + * **doc: pronounce the OVERLAPS example more** + + Andreas Reichel, 2022-09-08 + * **doc: write the correct Git Repository** + + Andreas Reichel, 2022-09-08 + * **doc: Add an example on Token White-listing** + + Andreas Reichel, 2022-09-06 + * **build: upload the built files via Excec/SFTP** + + Andreas Reichel, 2022-09-06 + * **doc: correctly refer to `RelObjectNameWithoutValue()`** + + Andreas Reichel, 2022-09-06 + * **doc: request for `Conventional Commit` messages** + + Andreas Reichel, 2022-09-06 + * **doc: Properly un-escape the Git Commit message** + + Andreas Reichel, 2022-09-05 + * **doc: Cleanup** + + Andreas Reichel, 2022-09-05 + * **build: Un-escape the Unicode on the changelog file** + + Andreas Reichel, 2022-09-05 + * **build: Un-escape the Unicode on the changelog file** + + Andreas Reichel, 2022-09-05 + * **doc: Explain the ``updateKeywords`` Gradle Task** + + Andreas Reichel, 2022-09-05 + * **build: Clean-up the Gradle Build** + + Andreas Reichel, 2022-09-05 + * **build: temporarily reduce the Code Coverage requirements** + + Andreas Reichel, 2022-09-02 + * **doc: ignore the autogenerated changelog.rst in GIT** + + Andreas Reichel, 2022-09-02 + * **test: Document an additional Special Oracle test success** + + Andreas Reichel, 2022-09-02 + * **Sphinx Documentation** + + Andreas Reichel, 2022-09-02 + * **Support timestamptz dateliteral (#1621)** + + Todd Pollak, 2022-08-31 + * **fixes #1617** + + Tobias Warneke, 2022-08-31 + * **fixes #419** + + Tobias Warneke, 2022-08-31 + * **Add AST Visualization** + + Andreas Reichel, 2022-08-18 + * **Closes #1604, added simple OVERLAPS support (#1611)** + + Rob Audenaerde, 2022-08-16 + * **Fixes PR #1524 support hive alter sql (#1609)** + + manticore-projects, 2022-08-14 + * **Fixes broken PR #1524 and Commit fb6e950ce0e62ebcd7a44ba9eea679da2b04b2ed** + + Andreas Reichel, 2022-08-04 + * **#1524 support hive alter sql : ALTER TABLE name ADD COLUMNS (col_spec[, col_spec ...]) (#1605)** + + Zhumin-lv-wn, 2022-08-03 + * **fixes #1581** + + Tobias Warneke, 2022-07-25 + * **Using own Feature - constant for "delete with returning" #1597 (#1598)** + + gitmotte, 2022-07-25 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2022-07-22 + * **Add JavaCC dependency to Maven for building ParserKeywordsUtils** + + Andreas Reichel, 2022-05-16 + * **Add JavaCC dependency to Maven for building ParserKeywordsUtils** + + Andreas Reichel, 2022-05-16 + * **Clean-up the imports** + + Andreas Reichel, 2022-05-16 + * **Separate UpdateKeywords Task again** + + Andreas Reichel, 2022-05-16 + * **Appease Codacy/PMD** + + Andreas Reichel, 2022-05-13 + * **Extract the Keywords from the Grammar by using JTRee (instead of Regex)** + + Andreas Reichel, 2022-05-13 + * **Appease PMD/Codacy** + + Andreas Reichel, 2022-04-23 + * **Read Tokens directly from the Grammar File without invoking JTREE** + + Andreas Reichel, 2022-04-23 + * **Fix Merge Issues** + + Andreas Reichel, 2022-04-15 + * **Force Changes** + + Andreas Reichel, 2022-04-15 + * **Remove broken rule warning about perfectly fine switch-case statements** + + Andreas Reichel, 2022-04-09 + * **Appease Codacy** + + Andreas Reichel, 2022-04-09 + * **Rewrite test expected to fail** + + Andreas Reichel, 2022-04-09 + * **Update PMD and rules** + + Andreas Reichel, 2022-04-09 + * **Automate the `updateKeywords` Step** + + Andreas Reichel, 2022-04-07 + * **Add Jupiter Parameters dependency again** + + Andreas Reichel, 2022-04-04 + * **CheckStyle sanitation of method names** + + Andreas Reichel, 2021-11-29 + * **Keyword test adopt JUnit5** + + Andreas Reichel, 2021-11-28 + * **Do not mark SpeedTest for concurrent execution** + + Andreas Reichel, 2021-11-28 + * **Adjust Gradle to JUnit 5** + + Andreas Reichel, 2021-11-28 + * **Remove unused imports** + + Andreas Reichel, 2021-11-28 + * **Remove unused imports** + + Andreas Reichel, 2021-11-28 + * **Do not mark SpeedTest for concurrent execution** + + Andreas Reichel, 2021-11-24 + * **Adjust Gradle to JUnit 5** + + Andreas Reichel, 2021-11-22 + * **Fix test resources** + + Andreas Reichel, 2021-10-24 + * **Define Reserved Keywords explicitly** + + Andreas Reichel, 2021-10-24 + * **Fix incorrect tests** + + Andreas Reichel, 2021-10-18 + * **Enhanced Keywords** + + Andreas Reichel, 2021-10-18 + +Version jsqlparser-4.5 +============================================================= + + + * **[maven-release-plugin] prepare release jsqlparser-4.5** + + Tobias Warneke, 2022-07-22 + * **introduced changelog generator** + + Tobias Warneke, 2022-07-22 + * **fixes #1596** + + Tobias Warneke, 2022-07-22 + * **integrated test for #1595** + + Tobias Warneke, 2022-07-19 + * **reduced time to parse exception to minimize impact on building time** + + Tobias Warneke, 2022-07-19 + * **add support for drop column if exists (#1594)** + + rrrship, 2022-07-19 + * **PostgreSQL INSERT ... ON CONFLICT Issue #1551 (#1552)** + + manticore-projects, 2022-07-19 + * **Configurable Parser Timeout via Feature (#1592)** + + manticore-projects, 2022-07-19 + * **fixes #1590** + + Tobias Warneke, 2022-07-19 + * **fixes #1590** + + Tobias Warneke, 2022-07-19 + * **extended support Postgres' `Extract( field FROM source)` where `field` is a String instead of a Keyword (#1591)** + + manticore-projects, 2022-07-19 + * **Closes #1579. Added ANALYZE support. (#1587)** + + Rob Audenaerde, 2022-07-14 + * **Closes #1583:: Implement Postgresql optional TABLE in TRUNCATE (#1585)** + + Rob Audenaerde, 2022-07-14 + * **Support table option character set and index options (#1586)** + + luofei, 2022-07-14 + * **corrected a last minute bug** + + Tobias Warneke, 2022-07-09 + * **corrected a last minute bug** + + Tobias Warneke, 2022-07-09 + * **corrected a last minute bug** + + Tobias Warneke, 2022-07-09 + * **fixes #1576** + + Tobias Warneke, 2022-07-09 + * **added simple test for #1580** + + Tobias Warneke, 2022-07-07 + * **disabled test for large cnf expansion and stack overflow problem** + + Tobias Warneke, 2022-07-07 + * **Add test for LikeExpression.setEscape and LikeExpression.getStringExpression (#1568)** + + Caro, 2022-07-07 + * **add support for postgres drop function statement (#1557)** + + rrrship, 2022-07-06 + * **Add support for Hive dialect GROUPING SETS. (#1539)** + + chenwl, 2022-07-06 + * **fixes #1566** + + Tobias Warneke, 2022-06-28 + * **Postgres NATURAL LEFT/RIGHT joins (#1560)** + + manticore-projects, 2022-06-28 + * **compound statement tests (#1545)** + + Matthew Rathbone, 2022-06-08 + * **Allow isolation keywords as column name and aliases (#1534)** + + Tomer Shay (Shimshi), 2022-05-19 + * **added github action badge** + + Tobias, 2022-05-16 + * **Create maven.yml** + + Tobias, 2022-05-16 + * **introduced deparser and toString correction for insert output clause** + + Tobias Warneke, 2022-05-15 + * **revived compilable status after merge** + + Tobias Warneke, 2022-05-15 + * **INSERT with SetOperations (#1531)** + + manticore-projects, 2022-05-15 + * **#1516 rename without column keyword (#1533)** + + manticore-projects, 2022-05-11 + * **Add support for `... ALTER COLUMN ... DROP DEFAULT` (#1532)** + + manticore-projects, 2022-05-11 + * **#1527 DELETE ... RETURNING ... (#1528)** + + manticore-projects, 2022-05-11 + * **fixs #1520 (#1521)** + + chiangcho, 2022-05-11 + * **Unsupported statement (#1519)** + + manticore-projects, 2022-05-11 + * **fixes #1518** + + Tobias Warneke, 2022-04-26 + * **Update bug_report.md (#1512)** + + manticore-projects, 2022-04-22 + * **changed to allow #1481** + + Tobias Warneke, 2022-04-22 + * **Performance Improvements (#1439)** + + manticore-projects, 2022-04-14 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2022-04-10 + +Version jsqlparser-4.4 +============================================================= + + + * **[maven-release-plugin] prepare release jsqlparser-4.4** + + Tobias Warneke, 2022-04-10 + * **Json function Improvements (#1506)** + + manticore-projects, 2022-04-09 + * **fixes #1505** + + Tobias Warneke, 2022-04-09 + * **fixes #1502** + + Tobias Warneke, 2022-04-09 + * **Issue1500 - Circular References in `AllColumns` and `AllTableColumns` (#1501)** + + manticore-projects, 2022-04-03 + * **Optimize assertCanBeParsedAndDeparsed (#1389)** + + manticore-projects, 2022-04-02 + * **Add geometry distance operator (#1493)** + + Thomas Powell, 2022-04-02 + * **Support WITH TIES option in TOP #1435 (#1479)** + + Olivier Cavadenti, 2022-04-02 + * **https://github.com/JSQLParser/JSqlParser/issues/1483 (#1485)** + + gitmotte, 2022-04-02 + * **fixes #1482** + + Tobias Warneke, 2022-03-15 + * **fixes #1482** + + Tobias Warneke, 2022-03-15 + * **Extending CaseExpression, covering #1458 (#1459)** + + Mathieu Goeminne, 2022-03-15 + * **fixes #1471** + + Tobias Warneke, 2022-02-18 + * **fixes #1471** + + Tobias Warneke, 2022-02-18 + * **fixes #1470** + + Tobias Warneke, 2022-02-06 + * **Add support for IS DISTINCT FROM clause (#1457)** + + Tomer Shay (Shimshi), 2022-01-18 + * **fix fetch present in the end of union query (#1456)** + + chiangcho, 2022-01-18 + * **added SQL_CACHE implementation and changed** + + Tobias Warneke, 2022-01-09 + * **support for db2 with ru (#1446)** + + chiangcho, 2021-12-20 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2021-12-12 + +Version jsqlparser-4.3 +============================================================= + + + * **[maven-release-plugin] prepare release jsqlparser-4.3** + + Tobias Warneke, 2021-12-12 + * **updated readme.md to show all changes for version 4.3** + + Tobias Warneke, 2021-12-12 + * **Adjust Gradle to JUnit 5 (#1428)** + + manticore-projects, 2021-11-28 + * **corrected some maven plugin versions** + + Tobias Warneke, 2021-11-28 + * **fixes #1429** + + Tobias Warneke, 2021-11-23 + * **closes #1427** + + Tobias Warneke, 2021-11-21 + * **CreateTableTest** + + Tobias Warneke, 2021-11-21 + * **Support EMIT CHANGES for KSQL (#1426)** + + Olivier Cavadenti, 2021-11-21 + * **SelectTest.testMultiPartColumnNameWithDatabaseNameAndSchemaName** + + Tobias Warneke, 2021-11-21 + * **reformatted test source code** + + Tobias Warneke, 2021-11-21 + * **organize imports** + + Tobias Warneke, 2021-11-21 + * **replaced all junit 3 and 4 with junit 5 stuff** + + Tobias Warneke, 2021-11-21 + * **Support RESTART without value (#1425)** + + Olivier Cavadenti, 2021-11-20 + * **Add support for oracle UnPivot when use multi columns at once. (#1419)** + + LeiJun, 2021-11-19 + * **Fix issue in parsing TRY_CAST() function (#1391)** + + Prashant Sutar, 2021-11-19 + * **fixes #1414** + + Tobias Warneke, 2021-11-19 + * **Add support for expressions (such as columns) in AT TIME ZONE expressions (#1413)** + + Tomer Shay (Shimshi), 2021-11-19 + * **Add supported for quoted cast expressions for PostgreSQL (#1411)** + + Tomer Shay (Shimshi), 2021-11-19 + * **added USE SCHEMA and CREATE OR REPLACE
    support; things that are allowed in Snowflake SQL (#1409)** + + Richard Kooijman, 2021-11-19 + * **Issue #420 Like Expression with Escape Expression (#1406)** + + manticore-projects, 2021-11-19 + * **fixes #1405 and some junit.jupiter stuff** + + Tobias Warneke, 2021-11-19 + * **#1401 add junit-jupiter-api (#1403)** + + gitmotte, 2021-11-19 + * **Support Postgres Dollar Quotes #1372 (#1395)** + + Olivier Cavadenti, 2021-11-19 + * **Add Delete / Update modifiers for MySQL #1254 (#1396)** + + Olivier Cavadenti, 2021-11-19 + * **Fixes #1381 (#1383)** + + manticore-projects, 2021-11-19 + * **Allows CASE ... ELSE ComplexExpression (#1388)** + + manticore-projects, 2021-11-02 + * **IN() with complex expressions (#1384)** + + manticore-projects, 2021-11-01 + * **Fixes #1385 and PR#1380 (#1386)** + + manticore-projects, 2021-10-22 + * **Fixes #1369 (#1370)** + + Ben Grabham, 2021-10-20 + * **Fixes #1371 (#1377)** + + manticore-projects, 2021-10-20 + * **LIMIT OFFSET with Expressions (#1378)** + + manticore-projects, 2021-10-20 + * **Oracle Multi Column Drop (#1379)** + + manticore-projects, 2021-10-20 + * **Support alias for UnPivot statement (see discussion #1374) (#1380)** + + fabriziodelfranco, 2021-10-20 + * **Issue1352 (#1353)** + + manticore-projects, 2021-10-09 + * **Enhance ALTER TABLE ... DROP CONSTRAINTS ... (#1351)** + + manticore-projects, 2021-10-08 + * **Function to use AllColumns or AllTableColumns Expression (#1350)** + + manticore-projects, 2021-10-08 + * **Postgres compliant ALTER TABLE ... RENAME TO ... (#1334)** + + manticore-projects, 2021-09-18 + * **Postgres compliant ALTER TABLE ... RENAME TO ... (#1334)** + + manticore-projects, 2021-09-18 + * **corrected readme to the new snapshot version** + + Tobias Warneke, 2021-09-08 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2021-09-08 + +Version jsqlparser-4.2 +============================================================= + + + * **[maven-release-plugin] prepare release jsqlparser-4.2** + + Tobias Warneke, 2021-09-08 + * **introducing test for issue #1328** + + Tobias Warneke, 2021-09-07 + * **included some distinct check** + + Tobias Warneke, 2021-09-07 + * **corrected a merge bug** + + Tobias Warneke, 2021-09-07 + * **Prepare4.2 (#1329)** + + manticore-projects, 2021-09-07 + * **CREATE TABLE AS (...) UNION (...) fails (#1309)** + + François Sécherre, 2021-09-07 + * **Fixes #1325 (#1327)** + + manticore-projects, 2021-09-06 + * **Implement Joins with multiple trailing ON Expressions (#1303)** + + manticore-projects, 2021-09-06 + * **Fix Gradle PMD and Checkstyle (#1318)** + + manticore-projects, 2021-09-01 + * **Fixes #1306 (#1311)** + + manticore-projects, 2021-08-28 + * **Update sets (#1317)** + + manticore-projects, 2021-08-27 + * **Special oracle tests (#1279)** + + manticore-projects, 2021-08-09 + * **Implements Hierarchical CONNECT_BY_ROOT Operator (#1282)** + + manticore-projects, 2021-08-09 + * **Implement Transact-SQL IF ELSE Statement Control Flows. (#1275)** + + manticore-projects, 2021-08-09 + * **Add some flexibility to the Alter Statement (#1293)** + + manticore-projects, 2021-08-02 + * **Implement Oracle's Alter System (#1288)** + + manticore-projects, 2021-08-02 + * **Implement Oracle Named Function Parameters Func( param1 => arg1, ...) (#1283)** + + manticore-projects, 2021-08-02 + * **Implement Gradle Buildsystem (#1271)** + + manticore-projects, 2021-08-02 + * **fixes #1272** + + Tobias Warneke, 2021-07-26 + * **Allowes JdbcParameter or JdbcNamedParameter for MySQL FullTextSearch (#1278)** + + manticore-projects, 2021-07-26 + * **Fixes #1267 Cast into RowConstructor (#1274)** + + manticore-projects, 2021-07-26 + * **Separate MySQL Special String Functions accepting Named Argument Separation as this could collide with ComplexExpressionList when InExpression is involved (#1285)** + + manticore-projects, 2021-07-26 + * **Implements Oracle RENAME oldTable TO newTable Statement (#1286)** + + manticore-projects, 2021-07-26 + * **Implement Oracle Purge Statement (#1287)** + + manticore-projects, 2021-07-26 + * **included jacoco to allow code coverage for netbeans** + + Tobias Warneke, 2021-07-18 + * **corrected a Lookahead problem** + + Tobias Warneke, 2021-07-16 + * **Json functions (#1263)** + + manticore-projects, 2021-07-16 + * **fixes #1255** + + Tobias Warneke, 2021-07-16 + * **Active JJDoc and let it create the Grammar BNF documentation (#1256)** + + manticore-projects, 2021-07-16 + * **Bump commons-io from 2.6 to 2.7 (#1265)** + + dependabot[bot], 2021-07-14 + * **Update README.md** + + Tobias, 2021-07-13 + * **Implement DB2 Special Register Date Time CURRENT DATE and CURRENT TIME (#1252)** + + manticore-projects, 2021-07-13 + * **Rename the PMD ruleset configuration file hoping for automatic synchronization with Codacy (#1251)** + + manticore-projects, 2021-07-13 + * **corrected .travis.yml** + + Tobias Warneke, 2021-07-05 + * **corrected .travis.yml** + + Tobias Warneke, 2021-07-05 + * **Update README.md** + + Tobias, 2021-07-05 + * **fixes #1250** + + Tobias Warneke, 2021-07-01 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2021-06-30 + +Version jsqlparser-4.1 +============================================================= + + + * **[maven-release-plugin] prepare release jsqlparser-4.1** + + Tobias Warneke, 2021-06-30 + * **fixes #1140** + + Tobias Warneke, 2021-06-30 + * **introduced #1248 halfway** + + Tobias Warneke, 2021-06-30 + * **Savepoint rollback (#1236)** + + manticore-projects, 2021-06-30 + * **Fixes Function Parameter List Brackets issue #1239 (#1240)** + + manticore-projects, 2021-06-30 + * **corrected javadoc problem** + + Tobias Warneke, 2021-06-27 + * **corrected some lookahead problem** + + Tobias Warneke, 2021-06-26 + * **RESET statement, SET PostgreSQL compatibility (#1104)** + + Роман Зотов, 2021-06-26 + * **corrected some lookahead problem** + + Tobias Warneke, 2021-06-26 + * **Implement Oracle Alter Session Statements (#1234)** + + manticore-projects, 2021-06-26 + * **fixes #1230** + + Tobias Warneke, 2021-06-26 + * **Support DELETE FROM T1 USING T2 WHERE ... (#1228)** + + francois-secherre, 2021-06-16 + * **Row access support (#1181)** + + Роман Зотов, 2021-06-16 + * **corrected lookahead problem of PR #1225** + + Tobias Warneke, 2021-06-14 + * **Delete queries without from, with a schema identifier fails (#1224)** + + François Sécherre, 2021-06-14 + * **Create temporary table t(c1, c2) as select ... (#1225)** + + francois-secherre, 2021-06-14 + * **Nested with items (#1221)** + + manticore-projects, 2021-06-10 + * **Implement GROUP BY () without columns (#1218)** + + manticore-projects, 2021-06-03 + * **TSQL Compliant NEXT VALUE FOR sequence_id (but keeping the spurious NEXTVAL FOR expression) (#1216)** + + manticore-projects, 2021-06-02 + * **Pmd clean up (#1215)** + + manticore-projects, 2021-06-02 + * **Add support for boolean 'XOR' operator (#1193)** + + Adaptive Recognition, 2021-06-02 + * **Update README.md** + + Tobias, 2021-05-31 + * **Implement WITH for DELETE, UPDATE and MERGE statements (#1217)** + + manticore-projects, 2021-05-31 + * **increases complex scanning range** + + Tobias Warneke, 2021-05-26 + * **Allow Complex Parsing of Functions (#1200)** + + manticore-projects, 2021-05-26 + * **Add support for AT TIME ZONE expressions (#1196)** + + Tomer Shay (Shimshi), 2021-05-25 + * **fixes #1211** + + Tobias Warneke, 2021-05-25 + * **fixes #1212** + + Tobias Warneke, 2021-05-25 + * **Fix Nested CASE WHEN performance, fixes issue #1162 (#1208)** + + manticore-projects, 2021-05-25 + * **Add support for casts in json expressions (#1189)** + + Tomer Shay (Shimshi), 2021-05-10 + * **fixes #1185** + + Tobias Warneke, 2021-05-04 + * **supporting/fixing unique inside sql function such as count eg - SELECT count(UNIQUE col2) FROM mytable (#1184)** + + RajaSudharsan Adhikesavan, 2021-05-01 + * **Oracle compliant ALTER TABLE ADD/MODIFY deparser (#1163)** + + manticore-projects, 2021-04-21 + * **Pmd (#1165)** + + manticore-projects, 2021-04-20 + * **function order by support (#1108)** + + Роман Зотов, 2021-04-20 + * **fixes #1159** + + Tobias Warneke, 2021-04-16 + * **added improvements of pr to readme** + + Tobias Warneke, 2021-04-16 + * **Assorted fixes to the Java CC Parser definition (#1153)** + + manticore-projects, 2021-04-16 + * **fixes #1138** + + Tobias Warneke, 2021-04-10 + * **fixes #1138** + + Tobias Warneke, 2021-04-10 + * **fixes #1137** + + Tobias Warneke, 2021-04-10 + * **fixes #1136** + + Tobias Warneke, 2021-04-10 + * **issue #1134 adressed** + + Tobias Warneke, 2021-03-20 + * **Add support for union_with_brackets_and_orderby (#1131)** + + Tomer Shay (Shimshi), 2021-03-14 + * **Add support for union without brackets and with limit (#1132)** + + Tomer Shay (Shimshi), 2021-03-14 + * **Add support for functions in an interval expression (#1099)** + + Tomer Shay (Shimshi), 2021-03-14 + * **subArray support arr[1:3] (#1109)** + + Роман Зотов, 2021-02-05 + * **bug fix (#769)** + + Kunal jha, 2021-02-05 + * **Array contructor support (#1105)** + + Роман Зотов, 2021-02-04 + * **Partial support construct tuple as simple expression (#1107)** + + Роман Зотов, 2021-01-31 + * **support create table parameters without columns, parameter values any names (#1106)** + + Роман Зотов, 2021-01-31 + * **fixes #995** + + Tobias Warneke, 2021-01-13 + * **fixes #1100** + + Tobias Warneke, 2021-01-13 + * **next correction of parenthesis around unions** + + Tobias Warneke, 2021-01-11 + * **fixes #992** + + Tobias Warneke, 2021-01-07 + * **corrected patch for case as table name** + + Tobias Warneke, 2021-01-07 + * **Added support for the Case keyword in table names (#1093)** + + Tomer Shay (Shimshi), 2021-01-07 + * **corrected some javadoc parameter** + + Tobias Warneke, 2021-01-03 + * **added missing pivot test files** + + Tobias Warneke, 2021-01-03 + * **fixes #282 - first refactoring to allow with clause as a start in insert and update** + + Tobias Warneke, 2021-01-02 + * **fixes #282 - first refactoring to allow with clause as a start in insert and update** + + Tobias Warneke, 2021-01-02 + * **Update README.md** + + Tobias, 2021-01-02 + * **fixes #887** + + Tobias Warneke, 2021-01-02 + * **fixes #1091 - added H2 casewhen function with conditional parameters** + + Tobias Warneke, 2021-01-01 + * **fixes #1091 - added H2 casewhen function with conditional parameters** + + Tobias Warneke, 2021-01-01 + * **[maven-release-plugin] prepare for next development iteration** + + Tobias Warneke, 2021-01-01 + diff --git a/src/site/sphinx/conf.py b/src/site/sphinx/conf.py new file mode 100644 index 000000000..3b1ef96d0 --- /dev/null +++ b/src/site/sphinx/conf.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- + +# General options +needs_sphinx = '1.0' +add_function_parentheses = True + +extensions = ['myst_parser', 'sphinx.ext.autodoc', 'sphinx.ext.autosectionlabel', 'sphinx.ext.extlinks', 'sphinx-prompt', 'sphinx_substitution_extensions', 'sphinx_issues', 'sphinx_tabs.tabs', 'pygments.sphinxext', ] + +issues_github_path = "JSQLParser/JSqlParser" + +source_encoding = 'utf-8-sig' +pygments_style = 'friendly' +show_sphinx = False +master_doc = 'index' +exclude_patterns = ['_themes', '_static/css'] + +# HTML options +html_theme = "sphinx_book_theme" +html_theme_path = ["_themes"] +html_short_title = "JSQLParser" +htmlhelp_basename = "JSQLParser" + '-doc' +html_use_index = True +html_show_sourcelink = False +html_static_path = ['_static'] +#html_logo = '_static/logo.svg' +html_css_files = ["svg.css"] + + +html_theme_options = { + 'path_to_docs': 'site/sphinx', + 'repository_url': 'https://github.com/JSQLParser/JSqlParser', + 'repository_branch': 'master', + 'use_issues_button': True, + 'use_download_button': True, + 'use_fullscreen_button': True, + 'use_repository_button': True, +} + + diff --git a/src/site/sphinx/contribution.rst b/src/site/sphinx/contribution.rst new file mode 100644 index 000000000..5d5f5ed56 --- /dev/null +++ b/src/site/sphinx/contribution.rst @@ -0,0 +1,166 @@ +****************************** +How to contribute +****************************** + +Error Reports +============================== + +Please report any issue to the `GitHub Issue Tracker `_: + + 1) Provide the **Sample SQL** (shortened and simplified, properly formatted) + 2) State the exact **Version of JSQLParser** + 3) State the **RDBMS** in use and point on the applicable Grammar specification + 4) Please write in **English** and post **Plain Text only** (avoiding screen shots or bitmap pictures). + +Before reporting any issues, please verify your statement using `JSQLFormatter Online `_. + +Feature Requests +============================== + +JSQLParser is a demand-driven software library, where many contributors have shared solutions for their own needs. Requests for new features have a good chance to get implemented when + + 1) the request is about a commonly used feature for one of the major RDBMS + 2) or the request is backed by a sponsor or a bounty, which may attract developers to spend their time on it. + +Implementing new Features +============================== + +The team around JSQLParser warmly welcomes Code Contributions and Pull Requests. Please follow the guidance below and do not hesitate to ask us for assistance. + +Create a new Git Branch +------------------------------ + +When starting afresh, clone `JSQLParser` from the `GitHub` repository: + +.. code-block:: Bash + + git clone https://github.com/JSQLParser/JSqlParser.git + cd JSqlParser + git branch + +When having a local repository already, then pull/merge from the `GitHub` repository: + +.. code-block:: Bash + + cd JSqlParser + git pull origin master + git branch + +Amend the Code +------------------------------ + +The JSQLParser is generated by ``JavaCC`` based on the provided Grammar. The Grammar defines how a SQL Text is read and translated into Java Objects. Thus any contribution will depend on the following steps: + + 1) Edit the ``JavaCC`` Grammar at ``src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt`` + 2) Add or edit the Java Classes at ``src/main/java/net/sf/jsqlparser`` to facilitate this Grammar. + 3) When have added new Java Classes, amend the Visitors, the Visitor Adaptors, the De-Parsers and the Validators. + 4) Provide Java Unit Tests at ``src/test/java/net/sf/jsqlparser`` to test the new feature + + * The test should call at least one time the method ``assertSqlCanBeParsedAndDeparsed()`` + * The test should ensure complete coverage of the new Java Classes. + * The complete test suite must succeed. + + 5) Add the description of the new feature to the ``README.md`` file, section `Extensions`. + 6) Build the package with ``Maven`` and ensure, all checks do pass (PMD and CheckStyle and Code Formatting). + +Manage Reserved Keywords +------------------------------ + +Since JSQLParser is built by JavaCC from a Token based Grammar, ``Reserved Keywords`` need a special treatment. All Tokens of the Grammar would become ``Reserved Keywords`` -- unless explicitly allowed and white-listened. + +.. code-block:: sql + :caption: White-list Keyword example + + -- is a Token, recently defined in the Grammar + -- Although it is not restricted by the SQL Standard and could be used for Column, Table and Alias names + -- Explicitly white-listing OVERLAPS by adding it to the RelObjectNameWithoutValue() Production will allow for parsing the following statement + + SELECT Overlaps( overlaps ) AS overlaps + FROM overlaps.overlaps overlaps + WHERE overlaps = 'overlaps' + AND (CURRENT_TIME, INTERVAL '1' HOUR) OVERLAPS (CURRENT_TIME, INTERVAL -'1' HOUR) + ; + +So we will need to define and white-list any Keywords which may be allowed for Object Names (such as `Schema`, `Table`, `Column`, `Function`, `Alias`). This White-List must be updated whenever the Tokens of the Grammar change (e. |_| g. when adding a new Token or Production). + +There is a task ``updateKeywords`` for Gradle and Maven, which will: + + 1) Parse the Grammar in order to find all Token definitions + 2) Read the list of explicitly ``Reserved Keywords`` from ``net/sf/jsqlparser/parser/ParserKeywordsUtils.java`` + 3) Derive the list of ``White-Listed Keywords`` as difference between ``All Tokens`` and ``Reserved Keywords`` + 4) Modifies the Grammar Productions ``RelObjectNameWithoutValue...`` adding all Tokens according to ``White-Listed Keywords`` + 5) Run two special Unit Tests to verify parsing of all ``White-Listed Keywords`` (as `Schema`, `Table`, `Column`, `Function` or `Alias`) + 6) Update the web page about the Reserved Keywords + +.. tabs:: + + .. tab:: Gradle + .. code-block:: shell + :caption: Gradle `updateKeywords` Task + + gradle updateKeywords + + .. tab:: Maven + .. code-block:: shell + :caption: Maven `updateKeywords` Task + + mvn exec:java + +Without this Gradle Task, any new Token or Production will become a ``Reserved Keyword`` automatically and can't be used for Object Names without quoting. + + +Commit a Pull Request +--------------------------------- + +.. code-block:: Bash + + cd JSqlParser + git add -A + git commit -m -m <description> + git push –set-upstream origin <new-branch> + +Follow the advice on `Meaningful Commit Messages <https://www.freecodecamp.org/news/how-to-write-better-git-commit-messages/>`_ and consider using `Commitizen <https://commitizen-tools.github.io/commitizen/>`_ when describing your commits. + +Please consider using `Conventional Commits` and structure your commit message as follows: + +.. code-block:: text + :caption: Conventional Commit Message Structure + + <type>[optional scope]: <description> + + [optional body] + + [BREAKING CHANGE: <change_description>] + + [optional footer(s)] + +.. list-table:: Commit Message Types + :widths: 15 85 + :header-rows: 1 + + * - Type + - Description + * - **feat** + - introduce a new feature + * - **fix** + - patches a bug in your codebase (bugfix or hotfix) + * - **build** + - changes that affect the build system or external dependencies + * - **chore** + - updates dependencies and does not relate to fix or feat and does not modify src or test files. + * - **ci** + - changes that affect the continuous integration process + * - **docs** + - updates the documentation or introduce documentation + * - **style** + - updates the formatting of code; remove white spaces, add missing spaces, remove unnecessary newlines + * - **refactor** + - reactors code segments to optimize readability without changing behavior + * - **perf** + - improve performance + * - **test** + - add/remove/update tests + * - **revert** + - reverts one or many previous commits + +Please visit `Better Programming <https://betterprogramming.pub/write-better-git-commit-messages-to-increase-your-productivity-89fa773e8375>`_ for more information and guidance. diff --git a/src/site/sphinx/index.rst b/src/site/sphinx/index.rst new file mode 100644 index 000000000..a20944280 --- /dev/null +++ b/src/site/sphinx/index.rst @@ -0,0 +1,90 @@ +########################### +Java SQL Parser Library +########################### + +.. toctree:: + :maxdepth: 2 + :hidden: + + usage + contribution + syntax + keywords + changelog + +.. image:: https://maven-badges.herokuapp.com/maven-central/com.github.jsqlparser/jsqlparser/badge.svg + :alt: Maven Repo + +.. image:: https://github.com/JSQLParser/JSqlParser/actions/workflows/maven.yml/badge.svg + :alt: Maven Build Status + +.. image:: https://coveralls.io/repos/JSQLParser/JSqlParser/badge.svg?branch=master + :alt: Coverage Status + +.. image:: https://app.codacy.com/project/badge/Grade/6f9a2d7eb98f45969749e101322634a1 + :alt: Codacy Status + +.. image:: https://www.javadoc.io/badge/com.github.jsqlparser/jsqlparser.svg + :alt: Java Docs + +**JSQLParser** is a SQL statement parser built from JavaCC. It translates SQLs in a traversable hierarchy of Java classes. + +Latest stable release: |JSQLPARSER_STABLE_VERSION_LINK| + +Development version: |JSQLPARSER_SNAPSHOT_VERSION_LINK| + +.. sidebar:: Java SQL Object Hierarchy + + .. image:: _images/JavaAST.png + + +.. code-block:: SQL + :caption: Sample SQL Statement + + SELECT /*+ PARALLEL */ + cfe.id_collateral_ref.nextval + , id_collateral + FROM ( SELECT DISTINCT + a.id_collateral + FROM cfe.collateral a + LEFT JOIN cfe.collateral_ref b + ON a.id_collateral = b.id_collateral + WHERE b.id_collateral_ref IS NULL ) + ; + + +****************************** +SQL Dialects +****************************** + +**JSqlParser** is RDBMS agnostic and provides support for many dialects such as: + + * Oracle Database + * MS SqlServer + * MySQL and MariaDB + * PostgreSQL + * H2 + +******************************* +Features +******************************* + + * Comprehensive support for statements: + - QUERY: ``SELECT ...`` + - DML: ``INSERT ... INTO ...`` ``UPDATE ...`` ``MERGE ... INTO ...`` ``DELETE ... FROM ...`` + - DDL: ``CREATE ...`` ``ALTER ...`` ``DROP ...`` + + * Nested Expressions (e.g. Sub-Selects) + * ``WITH`` clauses + * Old Oracle ``JOIN (+)`` + * PostgreSQL implicit ``CAST ::`` + * SQL Parameters (e.g. ``?`` or ``:parameter``) + * Arrays vs. T-SQL Squared Bracket Quotes + * Fluent API to create SQL Statements from java Code + * Statement De-Parser to write SQL from Java Objects + + + + + + diff --git a/src/site/sphinx/keywords.rst b/src/site/sphinx/keywords.rst new file mode 100644 index 000000000..f0e8f7156 --- /dev/null +++ b/src/site/sphinx/keywords.rst @@ -0,0 +1,231 @@ +*********************** +Restricted Keywords +*********************** + +The following Keywords are **restricted** in JSQLParser-|JSQLPARSER_VERSION| and must not be used for **Naming Objects**: + ++----------------------+-------------+-----------+ +| **Keyword** | JSQL Parser | SQL:2016 | ++----------------------+-------------+-----------+ +| ABSENT | Yes | Yes | ++----------------------+-------------+-----------+ +| ALL | Yes | Yes | ++----------------------+-------------+-----------+ +| AND | Yes | Yes | ++----------------------+-------------+-----------+ +| ANY | Yes | Yes | ++----------------------+-------------+-----------+ +| AS | Yes | Yes | ++----------------------+-------------+-----------+ +| BETWEEN | Yes | Yes | ++----------------------+-------------+-----------+ +| BOTH | Yes | Yes | ++----------------------+-------------+-----------+ +| CASEWHEN | Yes | | ++----------------------+-------------+-----------+ +| CHECK | Yes | Yes | ++----------------------+-------------+-----------+ +| CONNECT | Yes | | ++----------------------+-------------+-----------+ +| CONNECT_BY_ROOT | Yes | Yes | ++----------------------+-------------+-----------+ +| CONSTRAINT | Yes | Yes | ++----------------------+-------------+-----------+ +| CREATE | Yes | | ++----------------------+-------------+-----------+ +| CROSS | Yes | Yes | ++----------------------+-------------+-----------+ +| CURRENT | Yes | Yes | ++----------------------+-------------+-----------+ +| DISTINCT | Yes | Yes | ++----------------------+-------------+-----------+ +| DOUBLE | Yes | | ++----------------------+-------------+-----------+ +| ELSE | Yes | Yes | ++----------------------+-------------+-----------+ +| EXCEPT | Yes | Yes | ++----------------------+-------------+-----------+ +| EXISTS | Yes | Yes | ++----------------------+-------------+-----------+ +| FETCH | Yes | Yes | ++----------------------+-------------+-----------+ +| FOR | Yes | Yes | ++----------------------+-------------+-----------+ +| FORCE | Yes | Yes | ++----------------------+-------------+-----------+ +| FOREIGN | Yes | Yes | ++----------------------+-------------+-----------+ +| FROM | Yes | Yes | ++----------------------+-------------+-----------+ +| FULL | Yes | Yes | ++----------------------+-------------+-----------+ +| GROUP | Yes | Yes | ++----------------------+-------------+-----------+ +| GROUPING | Yes | | ++----------------------+-------------+-----------+ +| HAVING | Yes | Yes | ++----------------------+-------------+-----------+ +| IF | Yes | Yes | ++----------------------+-------------+-----------+ +| IIF | Yes | | ++----------------------+-------------+-----------+ +| IGNORE | Yes | | ++----------------------+-------------+-----------+ +| ILIKE | Yes | Yes | ++----------------------+-------------+-----------+ +| IN | Yes | Yes | ++----------------------+-------------+-----------+ +| INNER | Yes | Yes | ++----------------------+-------------+-----------+ +| INTERSECT | Yes | Yes | ++----------------------+-------------+-----------+ +| INTERVAL | Yes | Yes | ++----------------------+-------------+-----------+ +| INTO | Yes | Yes | ++----------------------+-------------+-----------+ +| IS | Yes | Yes | ++----------------------+-------------+-----------+ +| JOIN | Yes | Yes | ++----------------------+-------------+-----------+ +| LATERAL | Yes | Yes | ++----------------------+-------------+-----------+ +| LEFT | Yes | Yes | ++----------------------+-------------+-----------+ +| LIKE | Yes | Yes | ++----------------------+-------------+-----------+ +| LIMIT | Yes | Yes | ++----------------------+-------------+-----------+ +| MINUS | Yes | Yes | ++----------------------+-------------+-----------+ +| NATURAL | Yes | Yes | ++----------------------+-------------+-----------+ +| NOCYCLE | Yes | Yes | ++----------------------+-------------+-----------+ +| NOT | Yes | Yes | ++----------------------+-------------+-----------+ +| NULL | Yes | Yes | ++----------------------+-------------+-----------+ +| OFFSET | Yes | Yes | ++----------------------+-------------+-----------+ +| ON | Yes | Yes | ++----------------------+-------------+-----------+ +| ONLY | Yes | Yes | ++----------------------+-------------+-----------+ +| OPTIMIZE | Yes | | ++----------------------+-------------+-----------+ +| OR | Yes | Yes | ++----------------------+-------------+-----------+ +| ORDER | Yes | Yes | ++----------------------+-------------+-----------+ +| OUTER | Yes | Yes | ++----------------------+-------------+-----------+ +| OUTPUT | Yes | Yes | ++----------------------+-------------+-----------+ +| OPTIMIZE | Yes | Yes | ++----------------------+-------------+-----------+ +| PIVOT | Yes | Yes | ++----------------------+-------------+-----------+ +| PROCEDURE | Yes | | ++----------------------+-------------+-----------+ +| PUBLIC | Yes | | ++----------------------+-------------+-----------+ +| RECURSIVE | Yes | Yes | ++----------------------+-------------+-----------+ +| REGEXP | Yes | Yes | ++----------------------+-------------+-----------+ +| RETURNING | Yes | Yes | ++----------------------+-------------+-----------+ +| RIGHT | Yes | Yes | ++----------------------+-------------+-----------+ +| SEL | Yes | | ++----------------------+-------------+-----------+ +| SELECT | Yes | | ++----------------------+-------------+-----------+ +| SEMI | Yes | Yes | ++----------------------+-------------+-----------+ +| SET | Yes | Yes | ++----------------------+-------------+-----------+ +| SOME | Yes | Yes | ++----------------------+-------------+-----------+ +| START | Yes | Yes | ++----------------------+-------------+-----------+ +| TABLES | Yes | | ++----------------------+-------------+-----------+ +| TOP | Yes | Yes | ++----------------------+-------------+-----------+ +| TRAILING | Yes | Yes | ++----------------------+-------------+-----------+ +| UNBOUNDED | Yes | Yes | ++----------------------+-------------+-----------+ +| UNION | Yes | Yes | ++----------------------+-------------+-----------+ +| UNIQUE | Yes | Yes | ++----------------------+-------------+-----------+ +| UNPIVOT | Yes | Yes | ++----------------------+-------------+-----------+ +| USE | Yes | Yes | ++----------------------+-------------+-----------+ +| USING | Yes | Yes | ++----------------------+-------------+-----------+ +| SQL_CACHE | Yes | Yes | ++----------------------+-------------+-----------+ +| SQL_CALC_FOUND_ROWS | Yes | Yes | ++----------------------+-------------+-----------+ +| SQL_NO_CACHE | Yes | Yes | ++----------------------+-------------+-----------+ +| STRAIGHT_JOIN | Yes | Yes | ++----------------------+-------------+-----------+ +| VALUE | Yes | Yes | ++----------------------+-------------+-----------+ +| VALUES | Yes | Yes | ++----------------------+-------------+-----------+ +| VARYING | Yes | Yes | ++----------------------+-------------+-----------+ +| WHEN | Yes | Yes | ++----------------------+-------------+-----------+ +| WHERE | Yes | Yes | ++----------------------+-------------+-----------+ +| WINDOW | Yes | Yes | ++----------------------+-------------+-----------+ +| WITH | Yes | Yes | ++----------------------+-------------+-----------+ +| XOR | Yes | Yes | ++----------------------+-------------+-----------+ +| XMLSERIALIZE | Yes | Yes | ++----------------------+-------------+-----------+ +| SEL | Yes | Yes | ++----------------------+-------------+-----------+ +| SELECT | Yes | Yes | ++----------------------+-------------+-----------+ +| DATE | Yes | Yes | ++----------------------+-------------+-----------+ +| TIME | Yes | Yes | ++----------------------+-------------+-----------+ +| TIMESTAMP | Yes | Yes | ++----------------------+-------------+-----------+ +| YEAR | Yes | Yes | ++----------------------+-------------+-----------+ +| MONTH | Yes | Yes | ++----------------------+-------------+-----------+ +| DAY | Yes | Yes | ++----------------------+-------------+-----------+ +| HOUR | Yes | Yes | ++----------------------+-------------+-----------+ +| MINUTE | Yes | Yes | ++----------------------+-------------+-----------+ +| SECOND | Yes | Yes | ++----------------------+-------------+-----------+ +| SUBSTR | Yes | Yes | ++----------------------+-------------+-----------+ +| SUBSTRING | Yes | Yes | ++----------------------+-------------+-----------+ +| TRIM | Yes | Yes | ++----------------------+-------------+-----------+ +| POSITION | Yes | Yes | ++----------------------+-------------+-----------+ +| OVERLAY | Yes | Yes | ++----------------------+-------------+-----------+ +| NEXTVAL | Yes | Yes | ++----------------------+-------------+-----------+ +| 0x | Yes | Yes | ++----------------------+-------------+-----------+ diff --git a/src/site/sphinx/syntax.rst b/src/site/sphinx/syntax.rst new file mode 100644 index 000000000..bc85ca60a --- /dev/null +++ b/src/site/sphinx/syntax.rst @@ -0,0 +1,10851 @@ + +******************** +Supported SQL Syntax +******************** + +The EBNF and Railroad Diagrams for JSQLParser-|JSQLPARSER_VERSION|. + + +====================================================================================================================== + Statement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="695" height="119"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="63" y="22" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="34">IF</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#condition" xlink:title="Condition" shape="rect"> + <rect x="87" y="22" width="52" height="18" class="nonterminal"/> + <text class="nonterminal" x="91" y="34">Condition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="187" y="43" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="191" y="55">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="187" y="71" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="191" y="83">Block</text></a><rect x="319" y="64" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="323" y="76">;</text> + <rect x="357" y="43" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="361" y="55">ELSE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="453" y="1" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="457" y="13">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="453" y="29" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="457" y="41">Block</text></a><rect x="585" y="22" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="589" y="34">;</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#eof" xlink:title="EOF" shape="rect"> + <rect x="623" y="1" width="28" height="18" class="nonterminal"/> + <text class="nonterminal" x="627" y="13">EOF</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#unsupportedstatement" xlink:title="UnsupportedStatement" shape="rect"> + <rect x="43" y="99" width="118" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="111">UnsupportedStatement</text></a><path class="line" d="m17 10 h2 m40 0 h10 m0 0 h340 m-370 0 h20 m350 0 h20 m-390 0 q10 0 10 10 m370 0 q0 -10 10 -10 m-380 10 v1 m370 0 v-1 m-370 1 q0 10 10 10 m350 0 q10 0 10 -10 m-360 10 h4 m16 0 h4 m0 0 h4 m52 0 h4 m20 0 h10 m0 0 h216 m-246 0 h20 m226 0 h20 m-266 0 q10 0 10 10 m246 0 q0 -10 10 -10 m-256 10 v1 m246 0 v-1 m-246 1 q0 10 10 10 m226 0 q10 0 10 -10 m-216 10 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m40 -28 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h4 m28 0 h4 m60 -42 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m40 -28 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h4 m28 0 h4 m-636 0 h20 m616 0 h20 m-656 0 q10 0 10 10 m636 0 q0 -10 10 -10 m-646 10 v78 m636 0 v-78 m-636 78 q0 10 10 10 m616 0 q10 0 10 -10 m-626 10 h4 m118 0 h4 m0 0 h490 m23 -98 h-3"/> + <polygon points="685 10 693 6 693 14"/> + <polygon points="685 10 677 6 677 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#statement" title="Statement" shape="rect">Statement</a></div> + <div>         ::= ( 'IF' <a href="#condition" title="Condition" shape="rect">Condition</a> ( ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) ';'? 'ELSE' )? )? ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) ';'? <a href="#eof" title="EOF" shape="rect">EOF</a></div> + <div>           | <a href="#unsupportedstatement" title="UnsupportedStatement" shape="rect">UnsupportedStatement</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + SingleStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="265" height="1113"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withlist" xlink:title="WithList" shape="rect"> + <rect x="63" y="1" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="13">WithList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#select" xlink:title="Select" shape="rect"> + <rect x="117" y="1" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="13">Select</text></a><rect x="161" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withlist" xlink:title="WithList" shape="rect"> + <rect x="63" y="50" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="62">WithList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#select" xlink:title="Select" shape="rect"> + <rect x="157" y="29" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="41">Select</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#insert" xlink:title="Insert" shape="rect"> + <rect x="157" y="57" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="69">Insert</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#update" xlink:title="Update" shape="rect"> + <rect x="157" y="85" width="44" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="97">Update</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#delete" xlink:title="Delete" shape="rect"> + <rect x="157" y="113" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="125">Delete</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#merge" xlink:title="Merge" shape="rect"> + <rect x="157" y="141" width="38" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="153">Merge</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#upsert" xlink:title="Upsert" shape="rect"> + <rect x="43" y="169" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="181">Upsert</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#replace" xlink:title="Replace" shape="rect"> + <rect x="43" y="197" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="209">Replace</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#altertable" xlink:title="AlterTable" shape="rect"> + <rect x="43" y="225" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="237">AlterTable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#altersession" xlink:title="AlterSession" shape="rect"> + <rect x="43" y="253" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="265">AlterSession</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createfunctionstatement" xlink:title="CreateFunctionStatement" shape="rect"> + <rect x="43" y="281" width="126" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="293">CreateFunctionStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createindex" xlink:title="CreateIndex" shape="rect"> + <rect x="43" y="309" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="321">CreateIndex</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createschema" xlink:title="CreateSchema" shape="rect"> + <rect x="43" y="337" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="349">CreateSchema</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createsequence" xlink:title="CreateSequence" shape="rect"> + <rect x="43" y="365" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="377">CreateSequence</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createsynonym" xlink:title="CreateSynonym" shape="rect"> + <rect x="43" y="393" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="405">CreateSynonym</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createtable" xlink:title="CreateTable" shape="rect"> + <rect x="43" y="421" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="433">CreateTable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createview" xlink:title="CreateView" shape="rect"> + <rect x="43" y="449" width="62" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="461">CreateView</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterview" xlink:title="AlterView" shape="rect"> + <rect x="43" y="477" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="489">AlterView</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#altersequence" xlink:title="AlterSequence" shape="rect"> + <rect x="43" y="505" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="517">AlterSequence</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#drop" xlink:title="Drop" shape="rect"> + <rect x="43" y="533" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="545">Drop</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#analyze" xlink:title="Analyze" shape="rect"> + <rect x="43" y="561" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="573">Analyze</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#truncate" xlink:title="Truncate" shape="rect"> + <rect x="43" y="589" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="601">Truncate</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#execute" xlink:title="Execute" shape="rect"> + <rect x="43" y="617" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="629">Execute</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#set" xlink:title="Set" shape="rect"> + <rect x="43" y="645" width="24" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="657">Set</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#renametablestatement" xlink:title="RenameTableStatement" shape="rect"> + <rect x="43" y="673" width="122" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="685">RenameTableStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#reset" xlink:title="Reset" shape="rect"> + <rect x="43" y="701" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="713">Reset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#showcolumns" xlink:title="ShowColumns" shape="rect"> + <rect x="43" y="729" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="741">ShowColumns</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#showtables" xlink:title="ShowTables" shape="rect"> + <rect x="43" y="757" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="769">ShowTables</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#show" xlink:title="Show" shape="rect"> + <rect x="43" y="785" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="797">Show</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#use" xlink:title="Use" shape="rect"> + <rect x="43" y="813" width="28" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="825">Use</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#savepointstatement" xlink:title="SavepointStatement" shape="rect"> + <rect x="43" y="841" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="853">SavepointStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rollbackstatement" xlink:title="RollbackStatement" shape="rect"> + <rect x="43" y="869" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="881">RollbackStatement</text></a><rect x="43" y="897" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="909">COMMIT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#comment" xlink:title="Comment" shape="rect"> + <rect x="43" y="925" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="937">Comment</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#describe" xlink:title="Describe" shape="rect"> + <rect x="43" y="953" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="965">Describe</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#explain" xlink:title="Explain" shape="rect"> + <rect x="43" y="981" width="42" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="993">Explain</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#declare" xlink:title="Declare" shape="rect"> + <rect x="43" y="1009" width="44" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="1021">Declare</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#grant" xlink:title="Grant" shape="rect"> + <rect x="43" y="1037" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="1049">Grant</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#purgestatement" xlink:title="PurgeStatement" shape="rect"> + <rect x="43" y="1065" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="1077">PurgeStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#altersystemstatement" xlink:title="AlterSystemStatement" shape="rect"> + <rect x="43" y="1093" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="1105">AlterSystemStatement</text></a><path class="line" d="m17 10 h2 m20 0 h4 m12 0 h4 m0 0 h4 m46 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m12 0 h4 m0 0 h48 m-206 0 h20 m186 0 h20 m-226 0 q10 0 10 10 m206 0 q0 -10 10 -10 m-216 10 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-176 10 h10 m0 0 h44 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v1 m74 0 v-1 m-74 1 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m40 -21 h4 m36 0 h4 m0 0 h8 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m36 0 h4 m0 0 h8 m-62 -10 v20 m72 0 v-20 m-72 20 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m-62 -10 v20 m72 0 v-20 m-72 20 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m40 0 h4 m0 0 h4 m-62 -10 v20 m72 0 v-20 m-72 20 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m38 0 h4 m0 0 h6 m-176 -122 v20 m206 0 v-20 m-206 20 v120 m206 0 v-120 m-206 120 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m40 0 h4 m0 0 h138 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m46 0 h4 m0 0 h132 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m54 0 h4 m0 0 h124 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m64 0 h4 m0 0 h114 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m126 0 h4 m0 0 h52 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m66 0 h4 m0 0 h112 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m78 0 h4 m0 0 h100 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m86 0 h4 m0 0 h92 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m84 0 h4 m0 0 h94 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m64 0 h4 m0 0 h114 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m62 0 h4 m0 0 h116 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m50 0 h4 m0 0 h128 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m76 0 h4 m0 0 h102 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m32 0 h4 m0 0 h146 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m46 0 h4 m0 0 h132 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m48 0 h4 m0 0 h130 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m46 0 h4 m0 0 h132 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m24 0 h4 m0 0 h154 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m122 0 h4 m0 0 h56 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m36 0 h4 m0 0 h142 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m76 0 h4 m0 0 h102 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m64 0 h4 m0 0 h114 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m36 0 h4 m0 0 h142 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m28 0 h4 m0 0 h150 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m104 0 h4 m0 0 h74 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m94 0 h4 m0 0 h84 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m48 0 h4 m0 0 h130 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m56 0 h4 m0 0 h122 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m48 0 h4 m0 0 h130 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m42 0 h4 m0 0 h136 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m44 0 h4 m0 0 h134 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m34 0 h4 m0 0 h144 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m86 0 h4 m0 0 h92 m-196 -10 v20 m206 0 v-20 m-206 20 v8 m206 0 v-8 m-206 8 q0 10 10 10 m186 0 q10 0 10 -10 m-196 10 h4 m112 0 h4 m0 0 h66 m23 -1092 h-3"/> + <polygon points="255 10 263 6 263 14"/> + <polygon points="255 10 247 6 247 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a></div> + <div>         ::= '(' <a href="#withlist" title="WithList" shape="rect">WithList</a> <a href="#select" title="Select" shape="rect">Select</a> ')'</div> + <div>           | <a href="#withlist" title="WithList" shape="rect">WithList</a>? ( <a href="#select" title="Select" shape="rect">Select</a> | <a href="#insert" title="Insert" shape="rect">Insert</a> | <a href="#update" title="Update" shape="rect">Update</a> | <a href="#delete" title="Delete" shape="rect">Delete</a> | <a href="#merge" title="Merge" shape="rect">Merge</a> )</div> + <div>           | <a href="#upsert" title="Upsert" shape="rect">Upsert</a></div> + <div>           | <a href="#replace" title="Replace" shape="rect">Replace</a></div> + <div>           | <a href="#altertable" title="AlterTable" shape="rect">AlterTable</a></div> + <div>           | <a href="#altersession" title="AlterSession" shape="rect">AlterSession</a></div> + <div>           | <a href="#createfunctionstatement" title="CreateFunctionStatement" shape="rect">CreateFunctionStatement</a></div> + <div>           | <a href="#createindex" title="CreateIndex" shape="rect">CreateIndex</a></div> + <div>           | <a href="#createschema" title="CreateSchema" shape="rect">CreateSchema</a></div> + <div>           | <a href="#createsequence" title="CreateSequence" shape="rect">CreateSequence</a></div> + <div>           | <a href="#createsynonym" title="CreateSynonym" shape="rect">CreateSynonym</a></div> + <div>           | <a href="#createtable" title="CreateTable" shape="rect">CreateTable</a></div> + <div>           | <a href="#createview" title="CreateView" shape="rect">CreateView</a></div> + <div>           | <a href="#alterview" title="AlterView" shape="rect">AlterView</a></div> + <div>           | <a href="#altersequence" title="AlterSequence" shape="rect">AlterSequence</a></div> + <div>           | <a href="#drop" title="Drop" shape="rect">Drop</a></div> + <div>           | <a href="#analyze" title="Analyze" shape="rect">Analyze</a></div> + <div>           | <a href="#truncate" title="Truncate" shape="rect">Truncate</a></div> + <div>           | <a href="#execute" title="Execute" shape="rect">Execute</a></div> + <div>           | <a href="#set" title="Set" shape="rect">Set</a></div> + <div>           | <a href="#renametablestatement" title="RenameTableStatement" shape="rect">RenameTableStatement</a></div> + <div>           | <a href="#reset" title="Reset" shape="rect">Reset</a></div> + <div>           | <a href="#showcolumns" title="ShowColumns" shape="rect">ShowColumns</a></div> + <div>           | <a href="#showtables" title="ShowTables" shape="rect">ShowTables</a></div> + <div>           | <a href="#show" title="Show" shape="rect">Show</a></div> + <div>           | <a href="#use" title="Use" shape="rect">Use</a></div> + <div>           | <a href="#savepointstatement" title="SavepointStatement" shape="rect">SavepointStatement</a></div> + <div>           | <a href="#rollbackstatement" title="RollbackStatement" shape="rect">RollbackStatement</a></div> + <div>           | 'COMMIT'</div> + <div>           | <a href="#comment" title="Comment" shape="rect">Comment</a></div> + <div>           | <a href="#describe" title="Describe" shape="rect">Describe</a></div> + <div>           | <a href="#explain" title="Explain" shape="rect">Explain</a></div> + <div>           | <a href="#declare" title="Declare" shape="rect">Declare</a></div> + <div>           | <a href="#grant" title="Grant" shape="rect">Grant</a></div> + <div>           | <a href="#purgestatement" title="PurgeStatement" shape="rect">PurgeStatement</a></div> + <div>           | <a href="#altersystemstatement" title="AlterSystemStatement" shape="rect">AlterSystemStatement</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#block" title="block">block</a></li><li><a href="#statement" title="statement">statement</a></li><li><a href="#statements" title="statements">statements</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Block +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="423" height="70"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34">BEGIN</text> + <rect x="87" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="13">;</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="165" y="22" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="169" y="34">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="165" y="50" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="169" y="62">Block</text></a><rect x="277" y="22" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="281" y="34">;</text> + <rect x="315" y="22" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="319" y="34">END</text> + <rect x="369" y="43" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="373" y="55">;</text> + <path class="line" d="m17 31 h2 m0 0 h4 m36 0 h4 m20 0 h10 m0 0 h8 m-38 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m18 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-18 0 h4 m10 0 h4 m60 21 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m20 -28 h4 m10 0 h4 m-170 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m150 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-150 0 h10 m0 0 h140 m20 21 h4 m26 0 h4 m20 0 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m23 -21 h-3"/> + <polygon points="413 31 421 27 421 35"/> + <polygon points="413 31 405 27 405 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#block" title="Block" shape="rect">Block</a>    ::= 'BEGIN' ';'* ( ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) ';' )+ 'END' ';'?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#block" title="block">block</a></li><li><a href="#statement" title="statement">statement</a></li><li><a href="#statements" title="statements">statements</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Statements +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="689" height="437"> + <polygon points="11 31 3 27 3 35"/> + <polygon points="19 31 11 27 11 35"/> + <rect x="45" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="49" y="13">;</text> + <rect x="103" y="22" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="34">IF</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#condition" xlink:title="Condition" shape="rect"> + <rect x="127" y="22" width="52" height="18" class="nonterminal"/> + <text class="nonterminal" x="131" y="34">Condition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="207" y="22" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="211" y="34">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="207" y="50" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="211" y="62">Block</text></a><rect x="359" y="64" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="363" y="76">;</text> + <rect x="397" y="43" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="401" y="55">ELSE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="453" y="43" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="457" y="55">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="453" y="71" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="457" y="83">Block</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="103" y="99" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="111">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="103" y="127" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="139">Block</text></a><rect x="163" y="148" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="167" y="160">;</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#unsupportedstatement" xlink:title="UnsupportedStatement" shape="rect"> + <rect x="103" y="176" width="118" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="188">UnsupportedStatement</text></a><rect x="57" y="230" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="61" y="242">;</text> + <rect x="95" y="251" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="99" y="263">IF</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#condition" xlink:title="Condition" shape="rect"> + <rect x="119" y="251" width="52" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="263">Condition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="199" y="251" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="203" y="263">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="199" y="279" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="203" y="291">Block</text></a><rect x="351" y="293" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="355" y="305">;</text> + <rect x="389" y="272" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="393" y="284">ELSE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="445" y="272" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="449" y="284">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="445" y="300" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="449" y="312">Block</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#singlestatement" xlink:title="SingleStatement" shape="rect"> + <rect x="95" y="328" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="99" y="340">SingleStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#block" xlink:title="Block" shape="rect"> + <rect x="95" y="356" width="32" height="18" class="nonterminal"/> + <text class="nonterminal" x="99" y="368">Block</text></a><rect x="155" y="377" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="159" y="389">;</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#unsupportedstatement" xlink:title="UnsupportedStatement" shape="rect"> + <rect x="95" y="405" width="118" height="18" class="nonterminal"/> + <text class="nonterminal" x="99" y="417">UnsupportedStatement</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#eof" xlink:title="EOF" shape="rect"> + <rect x="637" y="230" width="28" height="18" class="nonterminal"/> + <text class="nonterminal" x="641" y="242">EOF</text></a><path class="line" d="m19 31 h2 m20 0 h10 m0 0 h8 m-38 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m18 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-18 0 h4 m10 0 h4 m40 21 h4 m16 0 h4 m0 0 h4 m52 0 h4 m20 0 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m40 -28 h10 m0 0 h216 m-246 0 h20 m226 0 h20 m-266 0 q10 0 10 10 m246 0 q0 -10 10 -10 m-256 10 v1 m246 0 v-1 m-246 1 q0 10 10 10 m226 0 q10 0 10 -10 m-216 10 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h4 m28 0 h4 m20 0 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m-462 -49 h20 m482 0 h20 m-522 0 q10 0 10 10 m502 0 q0 -10 10 -10 m-512 10 v57 m502 0 v-57 m-502 57 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m84 0 h4 m0 0 h390 m-492 -10 v20 m502 0 v-20 m-502 20 v8 m502 0 v-8 m-502 8 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m32 0 h4 m20 0 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h384 m-492 -10 v20 m502 0 v-20 m-502 20 v29 m502 0 v-29 m-502 29 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m118 0 h4 m0 0 h356 m22 -154 l2 0 m2 0 l2 0 m2 0 l2 0 m-612 208 l2 0 m2 0 l2 0 m2 0 l2 0 m42 0 h4 m10 0 h4 m20 0 h10 m0 0 h472 m-502 0 h20 m482 0 h20 m-522 0 q10 0 10 10 m502 0 q0 -10 10 -10 m-512 10 v1 m502 0 v-1 m-502 1 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m16 0 h4 m0 0 h4 m52 0 h4 m20 0 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m40 -28 h10 m0 0 h216 m-246 0 h20 m226 0 h20 m-266 0 q10 0 10 10 m246 0 q0 -10 10 -10 m-256 10 v1 m246 0 v-1 m-246 1 q0 10 10 10 m226 0 q10 0 10 -10 m-216 10 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h4 m28 0 h4 m20 0 h4 m84 0 h4 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m32 0 h4 m0 0 h52 m-452 -59 v20 m502 0 v-20 m-502 20 v57 m502 0 v-57 m-502 57 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m84 0 h4 m0 0 h390 m-492 -10 v20 m502 0 v-20 m-502 20 v8 m502 0 v-8 m-502 8 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m32 0 h4 m20 0 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m20 -21 h384 m-492 -10 v20 m502 0 v-20 m-502 20 v29 m502 0 v-29 m-502 29 q0 10 10 10 m482 0 q10 0 10 -10 m-492 10 h4 m118 0 h4 m0 0 h356 m-540 -175 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m540 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-540 0 h10 m0 0 h530 m-580 21 h20 m580 0 h20 m-620 0 q10 0 10 10 m600 0 q0 -10 10 -10 m-610 10 v176 m600 0 v-176 m-600 176 q0 10 10 10 m580 0 q10 0 10 -10 m-590 10 h10 m0 0 h570 m20 -196 h4 m28 0 h4 m3 0 h-3"/> + <polygon points="679 239 687 235 687 243"/> + <polygon points="679 239 671 235 671 243"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#statements" title="Statements" shape="rect">Statements</a></div> + <div>         ::= ';'* ( 'IF' <a href="#condition" title="Condition" shape="rect">Condition</a> ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) ( ';'? 'ELSE' ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) )? | <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ';'? | <a href="#unsupportedstatement" title="UnsupportedStatement" shape="rect">UnsupportedStatement</a> ) ( ';' ( 'IF' <a href="#condition" title="Condition" shape="rect">Condition</a> ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) ( ';'? 'ELSE' ( <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ) )? | <a href="#singlestatement" title="SingleStatement" shape="rect">SingleStatement</a> | <a href="#block" title="Block" shape="rect">Block</a> ';'? | <a href="#unsupportedstatement" title="UnsupportedStatement" shape="rect">UnsupportedStatement</a> )? )* <a href="#eof" title="EOF" shape="rect">EOF</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + Declare +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="455" height="154"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">DECLARE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="79" y="29" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="83" y="41">UserVariable</text></a><rect x="173" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="41">TABLE</text> + <rect x="217" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columndefinition" xlink:title="ColumnDefinition" shape="rect"> + <rect x="257" y="29" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="41">ColumnDefinition</text></a><rect x="257" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="13">,</text> + <rect x="371" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="375" y="41">)</text> + <rect x="173" y="57" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="69">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="201" y="57" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="205" y="69">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="193" y="113" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="197" y="125">ColDataType</text></a><rect x="289" y="134" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="293" y="146">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="311" y="134" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="315" y="146">Expression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="193" y="85" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="197" y="97">UserVariable</text></a><rect x="267" y="85" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="271" y="97">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m48 0 h4 m0 0 h4 m66 0 h4 m20 0 h4 m36 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m86 0 h4 m-114 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m94 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-94 0 h4 m8 0 h4 m0 0 h78 m20 28 h4 m12 0 h4 m0 0 h28 m-266 0 h20 m246 0 h20 m-286 0 q10 0 10 10 m266 0 q0 -10 10 -10 m-276 10 v8 m266 0 v-8 m-266 8 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h4 m20 0 h4 m0 0 h4 m80 0 h4 m0 0 h130 m-256 -10 v20 m266 0 v-20 m-266 20 v36 m266 0 v-36 m-266 36 q0 10 10 10 m246 0 q10 0 10 -10 m-236 10 h4 m68 0 h4 m20 0 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m14 0 h4 m0 0 h4 m60 0 h4 m-206 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m206 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-206 0 h4 m66 0 h4 m0 0 h4 m8 0 h4 m0 0 h116 m43 -56 h-3"/> + <polygon points="445 38 453 34 453 42"/> + <polygon points="445 38 437 34 437 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#declare" title="Declare" shape="rect">Declare</a>  ::= 'DECLARE' <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> ( 'TABLE' '(' <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> ( ',' <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> )* ')' | 'AS' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> | <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ( '=' <a href="#expression" title="Expression" shape="rect">Expression</a> )? ( ',' <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ( '=' <a href="#expression" title="Expression" shape="rect">Expression</a> )? )* )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Set +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="673" height="175"> + <polygon points="9 108 1 104 1 112"/> + <polygon points="17 108 9 104 9 112"/> + <rect x="23" y="99" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="111">SET</text> + <rect x="75" y="120" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="79" y="132">LOCAL</text> + <rect x="75" y="148" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="79" y="160">SESSION</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="173" y="99" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="177" y="111">K_DATETIMELITERAL</text></a><rect x="285" y="99" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="289" y="111">ZONE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="193" y="127" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="197" y="139">UserVariable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="193" y="155" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="197" y="167">RelObjectNameExt</text></a><rect x="335" y="148" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="160">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="417" y="99" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="421" y="111">Expression</text></a><rect x="437" y="22" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="441" y="34">ZONE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="479" y="22" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="483" y="34">K_DATETIMELITERAL</text></a><rect x="457" y="71" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="461" y="83">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="499" y="50" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="503" y="62">RelObjectNameExt</text></a><rect x="621" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="625" y="13">,</text> + <path class="line" d="m17 108 h2 m0 0 h4 m24 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m38 0 h4 m0 0 h12 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m40 -49 h4 m104 0 h4 m0 0 h4 m34 0 h4 m0 0 h50 m-224 0 h20 m204 0 h20 m-244 0 q10 0 10 10 m224 0 q0 -10 10 -10 m-234 10 v8 m224 0 v-8 m-224 8 q0 10 10 10 m204 0 q10 0 10 -10 m-194 10 h4 m66 0 h4 m0 0 h28 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m94 0 h4 m40 -28 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m60 -49 h4 m60 0 h4 m0 0 h152 m-240 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -78 q0 -10 10 -10 m220 98 l20 0 m-20 0 q10 0 10 -10 l0 -78 q0 -10 -10 -10 m-200 0 h10 m0 0 h154 m-184 0 h20 m164 0 h20 m-204 0 q10 0 10 10 m184 0 q0 -10 10 -10 m-194 10 v1 m184 0 v-1 m-184 1 q0 10 10 10 m164 0 q10 0 10 -10 m-174 10 h4 m34 0 h4 m0 0 h4 m104 0 h4 m0 0 h10 m-174 -10 v20 m184 0 v-20 m-184 20 v8 m184 0 v-8 m-184 8 q0 10 10 10 m164 0 q10 0 10 -10 m-154 10 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m20 -21 h4 m94 0 h4 m20 -49 h4 m8 0 h4 m23 98 h-3"/> + <polygon points="663 108 671 104 671 112"/> + <polygon points="663 108 655 104 655 112"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#set" title="Set" shape="rect">Set</a>      ::= 'SET' ( 'LOCAL' | 'SESSION' )? ( <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> 'ZONE' | ( <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> | <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a> ) '='? ) <a href="#expression" title="Expression" shape="rect">Expression</a> ( ',' ( <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> 'ZONE' | <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a> '='? )? <a href="#expression" title="Expression" shape="rect">Expression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Reset +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="277" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">RESET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="87" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="91" y="13">K_DATETIMELITERAL</text></a><rect x="199" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="203" y="13">ZONE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="87" y="29" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="91" y="41">RelObjectName</text></a><rect x="87" y="57" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="69">ALL</text> + <path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m20 0 h4 m104 0 h4 m0 0 h4 m34 0 h4 m-174 0 h20 m154 0 h20 m-194 0 q10 0 10 10 m174 0 q0 -10 10 -10 m-184 10 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m80 0 h4 m0 0 h66 m-164 -10 v20 m174 0 v-20 m-174 20 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m24 0 h4 m0 0 h122 m23 -56 h-3"/> + <polygon points="267 10 275 6 275 14"/> + <polygon points="267 10 259 6 259 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#reset" title="Reset" shape="rect">Reset</a>    ::= 'RESET' ( <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> 'ZONE' | <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> | 'ALL' )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RenameTableStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="579" height="98"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">RENAME</text> + <rect x="97" y="50" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="62">TABLE</text> + <rect x="181" y="50" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="62">IF</text> + <rect x="205" y="50" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="209" y="62">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="273" y="29" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="277" y="41">Table</text></a><rect x="335" y="50" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="62">WAIT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="377" y="50" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="381" y="62">S_LONG</text></a><rect x="335" y="78" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="90">NOWAIT</text> + <rect x="473" y="29" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="477" y="41">TO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="501" y="29" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="505" y="41">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="473" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="477" y="13">Table</text></a><rect x="515" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="519" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m46 0 h4 m20 0 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -21 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m16 0 h4 m0 0 h4 m40 0 h4 m20 -21 h4 m34 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m34 0 h4 m0 0 h4 m48 0 h4 m-108 -10 v20 m118 0 v-20 m-118 20 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m48 0 h4 m0 0 h42 m40 -49 h4 m20 0 h4 m0 0 h4 m34 0 h4 m-90 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m70 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-70 0 h4 m34 0 h4 m0 0 h4 m8 0 h4 m0 0 h12 m23 28 h-3"/> + <polygon points="569 38 577 34 577 42"/> + <polygon points="569 38 561 34 561 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#renametablestatement" title="RenameTableStatement" shape="rect">RenameTableStatement</a></div> + <div>         ::= 'RENAME' 'TABLE'? ( 'IF' 'EXISTS' )? <a href="#table" title="Table" shape="rect">Table</a> ( 'WAIT' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | 'NOWAIT' )? 'TO' <a href="#table" title="Table" shape="rect">Table</a> ( ',' <a href="#table" title="Table" shape="rect">Table</a> 'TO' <a href="#table" title="Table" shape="rect">Table</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PurgeStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="441" height="154"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">PURGE</text> + <rect x="89" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="13">TABLE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="133" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="137" y="13">Table</text></a><rect x="89" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="41">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#index" xlink:title="Index" shape="rect"> + <rect x="133" y="29" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="137" y="41">Index</text></a><rect x="89" y="57" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="69">RECYCLEBIN</text> + <rect x="89" y="85" width="90" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="97">DBA_RECYCLEBIN</text> + <rect x="89" y="113" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="125">TABLESPACE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="161" y="113" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="125">S_IDENTIFIER</text></a><rect x="263" y="134" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="267" y="146">USER</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="303" y="134" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="307" y="146">S_IDENTIFIER</text></a><path class="line" d="m17 10 h2 m0 0 h4 m38 0 h4 m20 0 h4 m36 0 h4 m0 0 h4 m34 0 h4 m0 0 h230 m-336 0 h20 m316 0 h20 m-356 0 q10 0 10 10 m336 0 q0 -10 10 -10 m-346 10 v8 m336 0 v-8 m-336 8 q0 10 10 10 m316 0 q10 0 10 -10 m-326 10 h4 m36 0 h4 m0 0 h4 m36 0 h4 m0 0 h228 m-326 -10 v20 m336 0 v-20 m-336 20 v8 m336 0 v-8 m-336 8 q0 10 10 10 m316 0 q10 0 10 -10 m-326 10 h4 m64 0 h4 m0 0 h244 m-326 -10 v20 m336 0 v-20 m-336 20 v8 m336 0 v-8 m-336 8 q0 10 10 10 m316 0 q10 0 10 -10 m-326 10 h4 m90 0 h4 m0 0 h218 m-326 -10 v20 m336 0 v-20 m-336 20 v8 m336 0 v-8 m-336 8 q0 10 10 10 m316 0 q10 0 10 -10 m-326 10 h4 m64 0 h4 m0 0 h4 m74 0 h4 m20 0 h10 m0 0 h112 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v1 m142 0 v-1 m-142 1 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m32 0 h4 m0 0 h4 m74 0 h4 m43 -133 h-3"/> + <polygon points="431 10 439 6 439 14"/> + <polygon points="431 10 423 6 423 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#purgestatement" title="PurgeStatement" shape="rect">PurgeStatement</a></div> + <div>         ::= 'PURGE' ( 'TABLE' <a href="#table" title="Table" shape="rect">Table</a> | 'INDEX' <a href="#index" title="Index" shape="rect">Index</a> | 'RECYCLEBIN' | 'DBA_RECYCLEBIN' | 'TABLESPACE' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ( 'USER' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> )? )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Describe +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">DESCRIBE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="83" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="13">Table</text></a><path class="line" d="m17 10 h2 m0 0 h4 m52 0 h4 m0 0 h4 m34 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#describe" title="Describe" shape="rect">Describe</a> ::= 'DESCRIBE' <a href="#table" title="Table" shape="rect">Table</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Explain +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="339" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">EXPLAIN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#explainstatementoptions" xlink:title="ExplainStatementOptions" shape="rect"> + <rect x="77" y="1" width="124" height="18" class="nonterminal"/> + <text class="nonterminal" x="81" y="13">ExplainStatementOptions</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="209" y="1" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="213" y="13">SelectWithWithItems</text></a><path class="line" d="m17 10 h2 m0 0 h4 m46 0 h4 m0 0 h4 m124 0 h4 m0 0 h4 m106 0 h4 m3 0 h-3"/> + <polygon points="329 10 337 6 337 14"/> + <polygon points="329 10 321 6 321 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#explain" title="Explain" shape="rect">Explain</a>  ::= 'EXPLAIN' <a href="#explainstatementoptions" title="ExplainStatementOptions" shape="rect">ExplainStatementOptions</a> <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExplainOptionBoolean +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="123" height="121"> + <polygon points="9 5 1 1 1 9"/> + <polygon points="17 5 9 1 9 9"/> + <rect x="43" y="17" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="29">TRUE</text> + <rect x="43" y="45" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="57">FALSE</text> + <rect x="43" y="73" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="85">ON</text> + <rect x="43" y="101" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="113">OFF</text> + <path class="line" d="m17 5 h2 m20 0 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m32 0 h4 m0 0 h4 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m22 0 h4 m0 0 h14 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m26 0 h4 m0 0 h10 m23 -105 h-3"/> + <polygon points="113 5 121 1 121 9"/> + <polygon points="113 5 105 1 105 9"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#explainoptionboolean" title="ExplainOptionBoolean" shape="rect">ExplainOptionBoolean</a></div> + <div>         ::= ( 'TRUE' | 'FALSE' | 'ON' | 'OFF' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#explainstatementoptions" title="explainstatementoptions">explainstatementoptions</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExplainFormatOption +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="121" height="93"> + <polygon points="9 5 1 1 1 9"/> + <polygon points="17 5 9 1 9 9"/> + <rect x="43" y="17" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="29">XML</text> + <rect x="43" y="45" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="57">JSON</text> + <rect x="43" y="73" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="85">YAML</text> + <path class="line" d="m17 5 h2 m20 0 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m28 0 h4 m0 0 h6 m-52 -10 v20 m62 0 v-20 m-62 20 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m32 0 h4 m0 0 h2 m-52 -10 v20 m62 0 v-20 m-62 20 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m23 -77 h-3"/> + <polygon points="111 5 119 1 119 9"/> + <polygon points="111 5 103 1 103 9"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#explainformatoption" title="ExplainFormatOption" shape="rect">ExplainFormatOption</a></div> + <div>         ::= ( 'XML' | 'JSON' | 'YAML' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#explainstatementoptions" title="explainstatementoptions">explainstatementoptions</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExplainStatementOptions +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="373" height="157"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="103" y="13" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="25">ANALYZE</text> + <rect x="103" y="41" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="53">BUFFERS</text> + <rect x="103" y="69" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="81">COSTS</text> + <rect x="103" y="97" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="109">VERBOSE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#explainoptionboolean" xlink:title="ExplainOptionBoolean" shape="rect"> + <rect x="181" y="13" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="25">ExplainOptionBoolean</text></a><rect x="83" y="125" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="137">FORMAT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#explainformatoption" xlink:title="ExplainFormatOption" shape="rect"> + <rect x="137" y="125" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="141" y="137">ExplainFormatOption</text></a><path class="line" d="m17 22 h2 m80 0 h4 m48 0 h4 m0 0 h2 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m48 0 h4 m0 0 h2 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m38 0 h4 m0 0 h12 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -84 h4 m108 0 h4 m-234 0 h20 m214 0 h20 m-254 0 q10 0 10 10 m234 0 q0 -10 10 -10 m-244 10 v92 m234 0 v-92 m-234 92 q0 10 10 10 m214 0 q10 0 10 -10 m-224 10 h4 m46 0 h4 m0 0 h4 m104 0 h4 m0 0 h48 m-254 -112 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m254 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-254 0 h10 m0 0 h244 m-294 21 h20 m294 0 h20 m-334 0 q10 0 10 10 m314 0 q0 -10 10 -10 m-324 10 v113 m314 0 v-113 m-314 113 q0 10 10 10 m294 0 q10 0 10 -10 m-304 10 h10 m0 0 h284 m23 -133 h-3"/> + <polygon points="363 22 371 18 371 26"/> + <polygon points="363 22 355 18 355 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#explainstatementoptions" title="ExplainStatementOptions" shape="rect">ExplainStatementOptions</a></div> + <div>         ::= ( ( 'ANALYZE' | 'BUFFERS' | 'COSTS' | 'VERBOSE' ) <a href="#explainoptionboolean" title="ExplainOptionBoolean" shape="rect">ExplainOptionBoolean</a> | 'FORMAT' <a href="#explainformatoption" title="ExplainFormatOption" shape="rect">ExplainFormatOption</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#explain" title="explain">explain</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Use +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="269" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">USE</text> + <rect x="77" y="22" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="81" y="34">SCHEMA</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="151" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="155" y="13">RelObjectNameExt</text></a><path class="line" d="m17 10 h2 m0 0 h4 m26 0 h4 m20 0 h10 m0 0 h44 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v1 m74 0 v-1 m-74 1 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m20 -21 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="259 10 267 6 267 14"/> + <polygon points="259 10 251 6 251 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#use" title="Use" shape="rect">Use</a>      ::= 'USE' 'SCHEMA'? <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ShowColumns +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="295" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SHOW</text> + <rect x="71" y="1" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="75" y="13">COLUMNS</text> + <rect x="133" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="137" y="13">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="177" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="181" y="13">RelObjectNameExt</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="285 10 293 6 293 14"/> + <polygon points="285 10 277 6 277 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#showcolumns" title="ShowColumns" shape="rect">ShowColumns</a></div> + <div>         ::= 'SHOW' 'COLUMNS' 'FROM' <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ShowTables +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="719" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SHOW</text> + <rect x="91" y="22" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="34">EXTENDED</text> + <rect x="195" y="22" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="34">FULL</text> + <rect x="253" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="257" y="13">TABLES</text> + <rect x="343" y="22" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="347" y="34">FROM</text> + <rect x="343" y="50" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="347" y="62">IN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="407" y="22" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="411" y="34">RelObjectNameExt</text></a><rect x="549" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="553" y="34">LIKE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="585" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="589" y="34">SimpleExpression</text></a><rect x="549" y="50" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="553" y="62">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="599" y="50" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="603" y="62">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m20 0 h10 m0 0 h54 m-84 0 h20 m64 0 h20 m-104 0 q10 0 10 10 m84 0 q0 -10 10 -10 m-94 10 v1 m84 0 v-1 m-84 1 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m56 0 h4 m40 -21 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -21 h4 m42 0 h4 m20 0 h10 m0 0 h176 m-206 0 h20 m186 0 h20 m-226 0 q10 0 10 10 m206 0 q0 -10 10 -10 m-216 10 v1 m206 0 v-1 m-206 1 q0 10 10 10 m186 0 q10 0 10 -10 m-176 10 h4 m36 0 h4 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m18 0 h4 m0 0 h18 m20 -28 h4 m94 0 h4 m40 -21 h10 m0 0 h124 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h4 m28 0 h4 m0 0 h4 m90 0 h4 m-144 -10 v20 m154 0 v-20 m-154 20 v8 m154 0 v-8 m-154 8 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h4 m42 0 h4 m0 0 h4 m60 0 h4 m0 0 h16 m23 -49 h-3"/> + <polygon points="709 10 717 6 717 14"/> + <polygon points="709 10 701 6 701 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#showtables" title="ShowTables" shape="rect">ShowTables</a></div> + <div>         ::= 'SHOW' 'EXTENDED'? 'FULL'? 'TABLES' ( ( 'FROM' | 'IN' ) <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a> )? ( 'LIKE' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> | 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Show +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="189" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SHOW</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="71" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="75" y="13">RelObjectNameExt</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="179 10 187 6 187 14"/> + <polygon points="179 10 171 6 171 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#show" title="Show" shape="rect">Show</a>     ::= 'SHOW' <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Values +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="241" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">VALUES</text> + <rect x="43" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">VALUE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="113" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="117" y="13">SimpleExpressionList</text></a><path class="line" d="m17 10 h2 m20 0 h4 m42 0 h4 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m36 0 h4 m0 0 h6 m20 -28 h4 m104 0 h4 m3 0 h-3"/> + <polygon points="231 10 239 6 239 14"/> + <polygon points="231 10 223 6 223 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#values" title="Values" shape="rect">Values</a>   ::= ( 'VALUES' | 'VALUE' ) <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Update +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="785" height="310"> + <polygon points="11 10 3 6 3 14"/> + <polygon points="19 10 11 6 11 14"/> + <rect x="25" y="1" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="29" y="13">UPDATE</text> + <rect x="97" y="22" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="34">LOW_PRIORITY</text> + <rect x="227" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="231" y="34">IGNORE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablewithalias" xlink:title="TableWithAlias" shape="rect"> + <rect x="299" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="303" y="13">TableWithAlias</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinslist" xlink:title="JoinsList" shape="rect"> + <rect x="381" y="1" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="385" y="13">JoinsList</text></a><rect x="435" y="1" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="439" y="13">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="118" y="92" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="122" y="104">Column</text></a><rect x="172" y="92" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="176" y="104">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="194" y="92" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="198" y="104">SimpleExpression</text></a><rect x="118" y="64" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="122" y="76">,</text> + <rect x="138" y="197" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="142" y="209">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="198" y="176" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="202" y="188">Column</text></a><rect x="198" y="148" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="202" y="160">,</text> + <rect x="292" y="197" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="296" y="209">)</text> + <rect x="332" y="176" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="336" y="188">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="374" y="176" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="378" y="188">SubSelect</text></a><rect x="374" y="204" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="378" y="216">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="394" y="204" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="398" y="216">ComplexExpressionList</text></a><rect x="516" y="204" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="520" y="216">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="374" y="232" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="378" y="244">Expression</text></a><rect x="118" y="120" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="122" y="132">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#outputclause" xlink:title="OutputClause" shape="rect"> + <rect x="616" y="113" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="620" y="125">OutputClause</text></a><rect x="37" y="290" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="302">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fromitem" xlink:title="FromItem" shape="rect"> + <rect x="81" y="290" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="85" y="302">FromItem</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinslist" xlink:title="JoinsList" shape="rect"> + <rect x="143" y="290" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="147" y="302">JoinsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whereclause" xlink:title="WhereClause" shape="rect"> + <rect x="237" y="290" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="302">WhereClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="357" y="290" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="361" y="302">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#plainlimit" xlink:title="PlainLimit" shape="rect"> + <rect x="495" y="290" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="499" y="302">PlainLimit</text></a><rect x="593" y="290" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="597" y="302">RETURNING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="663" y="290" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="667" y="302">SelectItemsList</text></a><path class="line" d="m19 10 h2 m0 0 h4 m44 0 h4 m20 0 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m40 -21 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -21 h4 m74 0 h4 m0 0 h4 m46 0 h4 m0 0 h4 m24 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-413 91 l2 0 m2 0 l2 0 m2 0 l2 0 m42 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m20 28 h264 m-498 0 h20 m478 0 h20 m-518 0 q10 0 10 10 m498 0 q0 -10 10 -10 m-508 10 v64 m498 0 v-64 m-498 64 q0 10 10 10 m478 0 q10 0 10 -10 m-448 10 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m40 -21 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m40 28 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m20 -21 h4 m14 0 h4 m20 0 h4 m54 0 h4 m0 0 h100 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m12 0 h4 m0 0 h4 m114 0 h4 m0 0 h4 m12 0 h4 m-172 -10 v20 m182 0 v-20 m-182 20 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m60 0 h4 m0 0 h94 m-438 -56 l20 0 m-1 0 q-9 0 -9 -10 l0 -36 q0 -10 10 -10 m438 56 l20 0 m-20 0 q10 0 10 -10 l0 -36 q0 -10 -10 -10 m-438 0 h4 m8 0 h4 m0 0 h422 m60 -28 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-723 177 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h150 m-180 0 h20 m160 0 h20 m-200 0 q10 0 10 10 m180 0 q0 -10 10 -10 m-190 10 v1 m180 0 v-1 m-180 1 q0 10 10 10 m160 0 q10 0 10 -10 m-170 10 h4 m36 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m46 0 h4 m40 -21 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m40 -21 h10 m0 0 h146 m-176 0 h20 m156 0 h20 m-196 0 q10 0 10 10 m176 0 q0 -10 10 -10 m-186 10 v1 m176 0 v-1 m-176 1 q0 10 10 10 m156 0 q10 0 10 -10 m-166 10 h4 m62 0 h4 m0 0 h4 m78 0 h4 m23 -21 h-3"/> + <polygon points="775 278 783 274 783 282"/> + <polygon points="775 278 767 274 767 282"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#update" title="Update" shape="rect">Update</a>   ::= 'UPDATE' 'LOW_PRIORITY'? 'IGNORE'? <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> <a href="#joinslist" title="JoinsList" shape="rect">JoinsList</a> 'SET' ( <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* | '('? <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')'? '=' ( <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' | <a href="#expression" title="Expression" shape="rect">Expression</a> ) ( ',' '('? <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')'? '=' ( <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' | <a href="#expression" title="Expression" shape="rect">Expression</a> ) )* ) <a href="#outputclause" title="OutputClause" shape="rect">OutputClause</a>? ( 'FROM' <a href="#fromitem" title="FromItem" shape="rect">FromItem</a> <a href="#joinslist" title="JoinsList" shape="rect">JoinsList</a> )? <a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a>? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? <a href="#plainlimit" title="PlainLimit" shape="rect">PlainLimit</a>? ( 'RETURNING' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Replace +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="753" height="273"> + <polygon points="11 10 3 6 3 14"/> + <polygon points="19 10 11 6 11 14"/> + <rect x="25" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="29" y="13">REPLACE</text> + <rect x="101" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="105" y="34">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="161" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="13">Table</text></a><rect x="37" y="92" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="104">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="89" y="92" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="93" y="104">Column</text></a><rect x="143" y="92" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="147" y="104">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="165" y="92" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="169" y="104">SimpleExpression</text></a><rect x="89" y="64" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="76">,</text> + <rect x="57" y="176" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="61" y="188">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="97" y="176" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="101" y="188">Column</text></a><rect x="97" y="148" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="160">,</text> + <rect x="171" y="176" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="175" y="188">)</text> + <rect x="251" y="197" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="255" y="209">VALUES</text> + <rect x="251" y="225" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="255" y="237">VALUE</text> + <rect x="321" y="176" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="325" y="188">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#primaryexpression" xlink:title="PrimaryExpression" shape="rect"> + <rect x="361" y="176" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="365" y="188">PrimaryExpression</text></a><rect x="361" y="148" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="160">,</text> + <rect x="503" y="176" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="507" y="188">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="523" y="148" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="527" y="160">SimpleExpression</text></a><rect x="523" y="120" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="527" y="132">,</text> + <rect x="641" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="645" y="160">(</text> + <rect x="661" y="148" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="665" y="160">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="231" y="253" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="235" y="265">SubSelect</text></a><path class="line" d="m19 10 h2 m0 0 h4 m48 0 h4 m20 0 h10 m0 0 h30 m-60 0 h20 m40 0 h20 m-80 0 q10 0 10 10 m60 0 q0 -10 10 -10 m-70 10 v1 m60 0 v-1 m-60 1 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m32 0 h4 m20 -21 h4 m34 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-210 91 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m24 0 h4 m20 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m20 28 h434 m-700 0 h20 m680 0 h20 m-720 0 q10 0 10 10 m700 0 q0 -10 10 -10 m-710 10 v64 m700 0 v-64 m-700 64 q0 10 10 10 m680 0 q10 0 10 -10 m-670 10 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h10 m0 0 h124 m60 -21 h10 m0 0 h40 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v1 m70 0 v-1 m-70 1 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m42 0 h4 m-60 -10 v20 m70 0 v-20 m-70 20 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m36 0 h4 m0 0 h6 m20 -49 h4 m12 0 h4 m20 0 h4 m94 0 h4 m-122 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m102 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-102 0 h4 m8 0 h4 m0 0 h86 m40 28 h4 m12 0 h4 m0 0 h154 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-154 0 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m20 28 h4 m12 0 h4 m0 0 h4 m8 0 h4 m-466 28 h20 m466 0 h20 m-506 0 q10 0 10 10 m486 0 q0 -10 10 -10 m-496 10 v57 m486 0 v-57 m-486 57 q0 10 10 10 m466 0 q10 0 10 -10 m-476 10 h4 m54 0 h4 m0 0 h404 m43 -161 h-3"/> + <polygon points="743 101 751 97 751 105"/> + <polygon points="743 101 735 97 735 105"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#replace" title="Replace" shape="rect">Replace</a>  ::= 'REPLACE' 'INTO'? <a href="#table" title="Table" shape="rect">Table</a> ( 'SET' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* | ( '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' )? ( ( 'VALUES' | 'VALUE' )? '(' <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a> ( ',' <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a> )* ')' ( ',' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ')' )* | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ListExpressionItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="195" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectexpressionitem" xlink:title="SelectExpressionItem" shape="rect"> + <rect x="43" y="29" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">SelectExpressionItem</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m108 0 h4 m-136 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m116 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-116 0 h4 m8 0 h4 m0 0 h100 m23 28 h-3"/> + <polygon points="185 38 193 34 193 42"/> + <polygon points="185 38 177 34 177 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#listexpressionitem" title="ListExpressionItem" shape="rect">ListExpressionItem</a></div> + <div>         ::= <a href="#selectexpressionitem" title="SelectExpressionItem" shape="rect">SelectExpressionItem</a> ( ',' <a href="#selectexpressionitem" title="SelectExpressionItem" shape="rect">SelectExpressionItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + Insert +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="683" height="357"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">INSERT</text> + <rect x="91" y="22" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="34">LOW_PRIORITY</text> + <rect x="91" y="50" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="62">DELAYED</text> + <rect x="91" y="78" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="90">HIGH_PRIORITY</text> + <rect x="221" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="34">IGNORE</text> + <rect x="313" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="317" y="34">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="373" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="377" y="13">Table</text></a><rect x="455" y="43" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="459" y="55">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutvalue" xlink:title="RelObjectNameWithoutValue" shape="rect"> + <rect x="503" y="22" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="507" y="34">RelObjectNameWithoutValue</text></a><rect x="75" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="79" y="160">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="115" y="148" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="119" y="160">Column</text></a><rect x="115" y="120" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="119" y="132">,</text> + <rect x="189" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="193" y="160">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#outputclause" xlink:title="OutputClause" shape="rect"> + <rect x="249" y="169" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="253" y="181">OutputClause</text></a><rect x="369" y="148" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="373" y="160">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="421" y="148" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="160">Column</text></a><rect x="475" y="148" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="479" y="160">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="497" y="148" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="501" y="160">SimpleExpression</text></a><rect x="421" y="120" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="425" y="132">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="369" y="176" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="373" y="188">SelectWithWithItems</text></a><rect x="148" y="246" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="152" y="258">ON</text> + <rect x="178" y="246" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="182" y="258">DUPLICATE</text> + <rect x="244" y="246" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="248" y="258">KEY</text> + <rect x="276" y="246" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="280" y="258">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="348" y="246" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="352" y="258">Column</text></a><rect x="402" y="246" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="406" y="258">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="424" y="246" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="428" y="258">SimpleExpression</text></a><rect x="348" y="218" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="352" y="230">,</text> + <rect x="113" y="316" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="117" y="328">ON</text> + <rect x="143" y="316" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="147" y="328">CONFLICT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#insertconflicttarget" xlink:title="InsertConflictTarget" shape="rect"> + <rect x="225" y="337" width="96" height="18" class="nonterminal"/> + <text class="nonterminal" x="229" y="349">InsertConflictTarget</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#insertconflictaction" xlink:title="InsertConflictAction" shape="rect"> + <rect x="349" y="316" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="353" y="328">InsertConflictAction</text></a><rect x="491" y="316" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="328">RETURNING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="561" y="316" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="565" y="328">SelectItemsList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m20 0 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m-100 -10 v20 m110 0 v-20 m-110 20 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m48 0 h4 m0 0 h34 m-100 -10 v20 m110 0 v-20 m-110 20 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m40 -77 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m40 -21 h10 m0 0 h30 m-60 0 h20 m40 0 h20 m-80 0 q10 0 10 10 m60 0 q0 -10 10 -10 m-70 10 v1 m60 0 v-1 m-60 1 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m32 0 h4 m20 -21 h4 m34 0 h4 m20 0 h10 m0 0 h208 m-238 0 h20 m218 0 h20 m-258 0 q10 0 10 10 m238 0 q0 -10 10 -10 m-248 10 v1 m238 0 v-1 m-238 1 q0 10 10 10 m218 0 q10 0 10 -10 m-208 10 h10 m0 0 h18 m-48 0 h20 m28 0 h20 m-68 0 q10 0 10 10 m48 0 q0 -10 10 -10 m-58 10 v1 m48 0 v-1 m-48 1 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m20 -21 h4 m142 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-642 147 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h10 m0 0 h124 m40 -21 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m40 -21 h4 m24 0 h4 m20 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m-246 28 h20 m246 0 h20 m-286 0 q10 0 10 10 m266 0 q0 -10 10 -10 m-276 10 v8 m266 0 v-8 m-266 8 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h4 m106 0 h4 m0 0 h132 m22 -28 l2 0 m2 0 l2 0 m2 0 l2 0 m-531 98 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m22 0 h4 m0 0 h4 m58 0 h4 m0 0 h4 m24 0 h4 m0 0 h4 m44 0 h4 m20 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m-394 28 h20 m394 0 h20 m-434 0 q10 0 10 10 m414 0 q0 -10 10 -10 m-424 10 v1 m414 0 v-1 m-414 1 q0 10 10 10 m394 0 q10 0 10 -10 m-404 10 h10 m0 0 h384 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-493 49 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h328 m-358 0 h20 m338 0 h20 m-378 0 q10 0 10 10 m358 0 q0 -10 10 -10 m-368 10 v1 m358 0 v-1 m-358 1 q0 10 10 10 m338 0 q10 0 10 -10 m-348 10 h4 m22 0 h4 m0 0 h4 m54 0 h4 m20 0 h10 m0 0 h94 m-124 0 h20 m104 0 h20 m-144 0 q10 0 10 10 m124 0 q0 -10 10 -10 m-134 10 v1 m124 0 v-1 m-124 1 q0 10 10 10 m104 0 q10 0 10 -10 m-114 10 h4 m96 0 h4 m20 -21 h4 m94 0 h4 m40 -21 h10 m0 0 h146 m-176 0 h20 m156 0 h20 m-196 0 q10 0 10 10 m176 0 q0 -10 10 -10 m-186 10 v1 m176 0 v-1 m-176 1 q0 10 10 10 m156 0 q10 0 10 -10 m-166 10 h4 m62 0 h4 m0 0 h4 m78 0 h4 m23 -21 h-3"/> + <polygon points="673 304 681 300 681 308"/> + <polygon points="673 304 665 300 665 308"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#insert" title="Insert" shape="rect">Insert</a>   ::= 'INSERT' ( 'LOW_PRIORITY' | 'DELAYED' | 'HIGH_PRIORITY' )? 'IGNORE'? 'INTO'? + <a href="#table" title="Table" shape="rect">Table</a> ( 'AS'? <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a> )? ( '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' )? <a href="#outputclause" title="OutputClause" shape="rect">OutputClause</a>? ( 'SET' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* | <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a> ) ( 'ON' 'DUPLICATE' 'KEY' 'UPDATE' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* )? ( 'ON' 'CONFLICT' <a href="#insertconflicttarget" title="InsertConflictTarget" shape="rect">InsertConflictTarget</a>? <a href="#insertconflictaction" title="InsertConflictAction" shape="rect">InsertConflictAction</a> )? ( 'RETURNING' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + InsertConflictTarget +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="347" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="63" y="1" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="13">RelObjectNameExt2</text></a><rect x="171" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="175" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whereclause" xlink:title="WhereClause" shape="rect"> + <rect x="211" y="22" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="215" y="34">WhereClause</text></a><rect x="43" y="50" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">ON</text> + <rect x="73" y="50" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="77" y="62">CONSTRAINT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="149" y="50" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="153" y="62">RelObjectNameExt2</text></a><path class="line" d="m17 10 h2 m20 0 h4 m12 0 h4 m0 0 h4 m100 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m-268 -21 h20 m268 0 h20 m-308 0 q10 0 10 10 m288 0 q0 -10 10 -10 m-298 10 v29 m288 0 v-29 m-288 29 q0 10 10 10 m268 0 q10 0 10 -10 m-278 10 h4 m22 0 h4 m0 0 h4 m68 0 h4 m0 0 h4 m100 0 h4 m0 0 h54 m23 -49 h-3"/> + <polygon points="337 10 345 6 345 14"/> + <polygon points="337 10 329 6 329 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#insertconflicttarget" title="InsertConflictTarget" shape="rect">InsertConflictTarget</a></div> + <div>         ::= '(' <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a> ')' <a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a>?</div> + <div>           | 'ON' 'CONSTRAINT' <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#insert" title="insert">insert</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + InsertConflictAction +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="795" height="259"> + <polygon points="11 10 3 6 3 14"/> + <polygon points="19 10 11 6 11 14"/> + <rect x="25" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="29" y="13">DO</text> + <rect x="37" y="43" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="55">NOTHING</text> + <rect x="37" y="99" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="111">UPDATE</text> + <rect x="89" y="99" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="111">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="161" y="99" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="111">Column</text></a><rect x="215" y="99" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="111">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="237" y="99" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="111">SimpleExpression</text></a><rect x="161" y="71" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="83">,</text> + <rect x="181" y="204" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="216">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="241" y="183" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="245" y="195">Column</text></a><rect x="241" y="155" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="167">,</text> + <rect x="335" y="204" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="216">)</text> + <rect x="375" y="183" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="195">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="417" y="183" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="421" y="195">SubSelect</text></a><rect x="417" y="211" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="421" y="223">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="437" y="211" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="441" y="223">ComplexExpressionList</text></a><rect x="559" y="211" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="563" y="223">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="417" y="239" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="421" y="251">Expression</text></a><rect x="161" y="127" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="139">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whereclause" xlink:title="WhereClause" shape="rect"> + <rect x="659" y="120" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="663" y="132">WhereClause</text></a><path class="line" d="m19 10 h2 m0 0 h4 m22 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-62 42 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m52 0 h4 m0 0 h662 m-742 0 h20 m722 0 h20 m-762 0 q10 0 10 10 m742 0 q0 -10 10 -10 m-752 10 v36 m742 0 v-36 m-742 36 q0 10 10 10 m722 0 q10 0 10 -10 m-732 10 h4 m44 0 h4 m0 0 h4 m24 0 h4 m40 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m20 28 h264 m-498 0 h20 m478 0 h20 m-518 0 q10 0 10 10 m498 0 q0 -10 10 -10 m-508 10 v64 m498 0 v-64 m-498 64 q0 10 10 10 m478 0 q10 0 10 -10 m-448 10 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m40 -21 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m40 28 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m20 -21 h4 m14 0 h4 m20 0 h4 m54 0 h4 m0 0 h100 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m12 0 h4 m0 0 h4 m114 0 h4 m0 0 h4 m12 0 h4 m-172 -10 v20 m182 0 v-20 m-182 20 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m60 0 h4 m0 0 h94 m-438 -56 l20 0 m-1 0 q-9 0 -9 -10 l0 -36 q0 -10 10 -10 m438 56 l20 0 m-20 0 q10 0 10 -10 l0 -36 q0 -10 -10 -10 m-438 0 h4 m8 0 h4 m0 0 h422 m60 -28 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m43 -77 h-3"/> + <polygon points="785 52 793 48 793 56"/> + <polygon points="785 52 777 48 777 56"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#insertconflictaction" title="InsertConflictAction" shape="rect">InsertConflictAction</a></div> + <div>         ::= 'DO' ( 'NOTHING' | 'UPDATE' 'SET' ( <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* | '('? <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')'? '=' ( <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' | <a href="#expression" title="Expression" shape="rect">Expression</a> ) ( ',' '('? <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')'? '=' ( <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' | <a href="#expression" title="Expression" shape="rect">Expression</a> ) )* ) <a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a>? )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#insert" title="insert">insert</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OutputClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="519" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">OUTPUT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="77" y="1" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="81" y="13">SelectItemsList</text></a><rect x="183" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="34">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="243" y="22" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="247" y="34">UserVariable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="243" y="50" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="247" y="62">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="357" y="43" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="361" y="55">ColumnsNamesList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m46 0 h4 m0 0 h4 m78 0 h4 m20 0 h10 m0 0 h290 m-320 0 h20 m300 0 h20 m-340 0 q10 0 10 10 m320 0 q0 -10 10 -10 m-330 10 v1 m320 0 v-1 m-320 1 q0 10 10 10 m300 0 q10 0 10 -10 m-310 10 h4 m32 0 h4 m20 0 h4 m66 0 h4 m-94 0 h20 m74 0 h20 m-114 0 q10 0 10 10 m94 0 q0 -10 10 -10 m-104 10 v8 m94 0 v-8 m-94 8 q0 10 10 10 m74 0 q10 0 10 -10 m-84 10 h4 m34 0 h4 m0 0 h32 m40 -28 h10 m0 0 h96 m-126 0 h20 m106 0 h20 m-146 0 q10 0 10 10 m126 0 q0 -10 10 -10 m-136 10 v1 m126 0 v-1 m-126 1 q0 10 10 10 m106 0 q10 0 10 -10 m-116 10 h4 m98 0 h4 m43 -42 h-3"/> + <polygon points="509 10 517 6 517 14"/> + <polygon points="509 10 501 6 501 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#outputclause" title="OutputClause" shape="rect">OutputClause</a></div> + <div>         ::= 'OUTPUT' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> ( 'INTO' ( <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> | <a href="#table" title="Table" shape="rect">Table</a> ) <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a>? )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Upsert +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="769" height="264"> + <polygon points="9 66 1 62 1 70"/> + <polygon points="17 66 9 62 9 70"/> + <rect x="23" y="57" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="69">UPSERT</text> + <rect x="95" y="78" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="99" y="90">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="155" y="57" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="159" y="69">Table</text></a><rect x="217" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="69">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="257" y="57" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="69">Column</text></a><rect x="257" y="29" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="41">,</text> + <rect x="331" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="335" y="69">)</text> + <rect x="431" y="78" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="435" y="90">VALUES</text> + <rect x="431" y="106" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="435" y="118">VALUE</text> + <rect x="521" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="525" y="69">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="561" y="57" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="565" y="69">SimpleExpression</text></a><rect x="561" y="29" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="565" y="41">,</text> + <rect x="521" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="525" y="13">,</text> + <rect x="537" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="541" y="13">)</text> + <rect x="411" y="134" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="415" y="146">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="431" y="134" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="435" y="146">SelectWithWithItems</text></a><rect x="719" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="723" y="69">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="391" y="162" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="395" y="174">SelectWithWithItems</text></a><rect x="339" y="232" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="343" y="244">ON</text> + <rect x="369" y="232" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="373" y="244">DUPLICATE</text> + <rect x="435" y="232" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="439" y="244">KEY</text> + <rect x="467" y="232" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="471" y="244">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="539" y="232" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="543" y="244">Column</text></a><rect x="593" y="232" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="597" y="244">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="615" y="232" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="619" y="244">SimpleExpression</text></a><rect x="539" y="204" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="543" y="216">,</text> + <path class="line" d="m17 66 h2 m0 0 h4 m44 0 h4 m20 0 h10 m0 0 h30 m-60 0 h20 m40 0 h20 m-80 0 q10 0 10 10 m60 0 q0 -10 10 -10 m-70 10 v1 m60 0 v-1 m-60 1 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m32 0 h4 m20 -21 h4 m34 0 h4 m20 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h10 m0 0 h124 m80 -21 h10 m0 0 h40 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v1 m70 0 v-1 m-70 1 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m42 0 h4 m-60 -10 v20 m70 0 v-20 m-70 20 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m36 0 h4 m0 0 h6 m40 -49 h4 m12 0 h4 m20 0 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m-158 28 l20 0 m-1 0 q-9 0 -9 -10 l0 -36 q0 -10 10 -10 m158 56 l20 0 m-20 0 q10 0 10 -10 l0 -36 q0 -10 -10 -10 m-158 0 h4 m8 0 h4 m0 0 h4 m12 0 h4 m0 0 h122 m-288 56 h20 m288 0 h20 m-328 0 q10 0 10 10 m308 0 q0 -10 10 -10 m-318 10 v57 m308 0 v-57 m-308 57 q0 10 10 10 m288 0 q10 0 10 -10 m-298 10 h4 m12 0 h4 m0 0 h4 m106 0 h4 m0 0 h154 m20 -77 h4 m12 0 h4 m-368 0 h20 m348 0 h20 m-388 0 q10 0 10 10 m368 0 q0 -10 10 -10 m-378 10 v85 m368 0 v-85 m-368 85 q0 10 10 10 m348 0 q10 0 10 -10 m-358 10 h4 m106 0 h4 m0 0 h234 m22 -105 l2 0 m2 0 l2 0 m2 0 l2 0 m-464 175 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m22 0 h4 m0 0 h4 m58 0 h4 m0 0 h4 m24 0 h4 m0 0 h4 m44 0 h4 m20 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m-394 28 h20 m394 0 h20 m-434 0 q10 0 10 10 m414 0 q0 -10 10 -10 m-424 10 v1 m414 0 v-1 m-414 1 q0 10 10 10 m394 0 q10 0 10 -10 m-404 10 h10 m0 0 h384 m23 -21 h-3"/> + <polygon points="759 241 767 237 767 245"/> + <polygon points="759 241 751 237 751 245"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#upsert" title="Upsert" shape="rect">Upsert</a>   ::= 'UPSERT' 'INTO'? <a href="#table" title="Table" shape="rect">Table</a> ( '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' )? ( ( ( 'VALUES' | 'VALUE' )? '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ( ')' ',' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* )* | '(' <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a> ) ')' | <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a> ) ( 'ON' 'DUPLICATE' 'KEY' 'UPDATE' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Delete +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="767" height="243"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">DELETE</text> + <rect x="91" y="50" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="62">LOW_PRIORITY</text> + <rect x="221" y="50" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="62">QUICK</text> + <rect x="307" y="50" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="311" y="62">IGNORE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablewithalias" xlink:title="TableWithAlias" shape="rect"> + <rect x="439" y="29" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="443" y="41">TableWithAlias</text></a><rect x="439" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="443" y="13">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#outputclause" xlink:title="OutputClause" shape="rect"> + <rect x="561" y="50" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="565" y="62">OutputClause</text></a><rect x="681" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="685" y="41">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablewithalias" xlink:title="TableWithAlias" shape="rect"> + <rect x="37" y="165" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="41" y="177">TableWithAlias</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinslist" xlink:title="JoinsList" shape="rect"> + <rect x="119" y="165" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="177">JoinsList</text></a><rect x="213" y="144" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="217" y="156">USING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablewithalias" xlink:title="TableWithAlias" shape="rect"> + <rect x="279" y="144" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="156">TableWithAlias</text></a><rect x="279" y="116" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="283" y="128">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whereclause" xlink:title="WhereClause" shape="rect"> + <rect x="421" y="165" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="177">WhereClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="541" y="165" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="545" y="177">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#plainlimit" xlink:title="PlainLimit" shape="rect"> + <rect x="679" y="165" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="683" y="177">PlainLimit</text></a><rect x="575" y="223" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="579" y="235">RETURNING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="645" y="223" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="649" y="235">SelectItemsList</text></a><path class="line" d="m17 38 h2 m0 0 h4 m40 0 h4 m20 0 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m40 -21 h10 m0 0 h36 m-66 0 h20 m46 0 h20 m-86 0 q10 0 10 10 m66 0 q0 -10 10 -10 m-76 10 v1 m66 0 v-1 m-66 1 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m38 0 h4 m40 -21 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m80 -21 h4 m74 0 h4 m-102 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m82 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-82 0 h4 m8 0 h4 m0 0 h66 m40 28 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m-242 -21 h20 m242 0 h20 m-282 0 q10 0 10 10 m262 0 q0 -10 10 -10 m-272 10 v22 m262 0 v-22 m-262 22 q0 10 10 10 m242 0 q10 0 10 -10 m-252 10 h10 m0 0 h232 m20 -42 h4 m36 0 h4 m-346 0 h20 m326 0 h20 m-366 0 q10 0 10 10 m346 0 q0 -10 10 -10 m-356 10 v34 m346 0 v-34 m-346 34 q0 10 10 10 m326 0 q10 0 10 -10 m-336 10 h10 m0 0 h316 m22 -54 l2 0 m2 0 l2 0 m2 0 l2 0 m-752 115 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h126 m-156 0 h20 m136 0 h20 m-176 0 q10 0 10 10 m156 0 q0 -10 10 -10 m-166 10 v1 m156 0 v-1 m-156 1 q0 10 10 10 m136 0 q10 0 10 -10 m-146 10 h4 m74 0 h4 m0 0 h4 m46 0 h4 m40 -21 h4 m38 0 h4 m20 0 h4 m74 0 h4 m-102 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m82 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-82 0 h4 m8 0 h4 m0 0 h66 m-168 28 h20 m168 0 h20 m-208 0 q10 0 10 10 m188 0 q0 -10 10 -10 m-198 10 v1 m188 0 v-1 m-188 1 q0 10 10 10 m168 0 q10 0 10 -10 m-178 10 h10 m0 0 h158 m40 -21 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-226 58 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h146 m-176 0 h20 m156 0 h20 m-196 0 q10 0 10 10 m176 0 q0 -10 10 -10 m-186 10 v1 m176 0 v-1 m-176 1 q0 10 10 10 m156 0 q10 0 10 -10 m-166 10 h4 m62 0 h4 m0 0 h4 m78 0 h4 m23 -21 h-3"/> + <polygon points="757 211 765 207 765 215"/> + <polygon points="757 211 749 207 749 215"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#delete" title="Delete" shape="rect">Delete</a>   ::= 'DELETE' 'LOW_PRIORITY'? 'QUICK'? 'IGNORE'? ( ( <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> ( ',' <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> )* <a href="#outputclause" title="OutputClause" shape="rect">OutputClause</a>? )? 'FROM' )? ( <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> <a href="#joinslist" title="JoinsList" shape="rect">JoinsList</a> )? ( 'USING' <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> ( ',' <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> )* )? <a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a>? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? <a href="#plainlimit" title="PlainLimit" shape="rect">PlainLimit</a>? ( 'RETURNING' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Merge +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="607" height="177"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">MERGE</text> + <rect x="71" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="75" y="13">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablewithalias" xlink:title="TableWithAlias" shape="rect"> + <rect x="111" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="13">TableWithAlias</text></a><rect x="193" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="197" y="13">USING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="259" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="263" y="13">Table</text></a><rect x="259" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="279" y="29" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="41">SubSelect</text></a><rect x="341" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="345" y="41">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="401" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="405" y="34">Alias</text></a><rect x="459" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="463" y="13">ON</text> + <rect x="489" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="493" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="509" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="513" y="13">Expression</text></a><rect x="577" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="581" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mergeupdateclause" xlink:title="MergeUpdateClause" shape="rect"> + <rect x="315" y="87" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="319" y="99">MergeUpdateClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mergeinsertclause" xlink:title="MergeInsertClause" shape="rect"> + <rect x="447" y="108" width="96" height="18" class="nonterminal"/> + <text class="nonterminal" x="451" y="120">MergeInsertClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mergeinsertclause" xlink:title="MergeInsertClause" shape="rect"> + <rect x="315" y="136" width="96" height="18" class="nonterminal"/> + <text class="nonterminal" x="319" y="148">MergeInsertClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mergeupdateclause" xlink:title="MergeUpdateClause" shape="rect"> + <rect x="439" y="157" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="443" y="169">MergeUpdateClause</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m0 0 h4 m32 0 h4 m0 0 h4 m74 0 h4 m0 0 h4 m38 0 h4 m20 0 h4 m34 0 h4 m0 0 h60 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m12 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m40 -28 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -21 h4 m22 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-326 65 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h246 m-276 0 h20 m256 0 h20 m-296 0 q10 0 10 10 m276 0 q0 -10 10 -10 m-286 10 v1 m276 0 v-1 m-276 1 q0 10 10 10 m256 0 q10 0 10 -10 m-266 10 h4 m104 0 h4 m20 0 h10 m0 0 h94 m-124 0 h20 m104 0 h20 m-144 0 q10 0 10 10 m124 0 q0 -10 10 -10 m-134 10 v1 m124 0 v-1 m-124 1 q0 10 10 10 m104 0 q10 0 10 -10 m-114 10 h4 m96 0 h4 m-246 -31 v20 m276 0 v-20 m-276 20 v29 m276 0 v-29 m-276 29 q0 10 10 10 m256 0 q10 0 10 -10 m-266 10 h4 m96 0 h4 m20 0 h10 m0 0 h102 m-132 0 h20 m112 0 h20 m-152 0 q10 0 10 10 m132 0 q0 -10 10 -10 m-142 10 v1 m132 0 v-1 m-132 1 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m104 0 h4 m43 -91 h-3"/> + <polygon points="597 75 605 71 605 79"/> + <polygon points="597 75 589 71 589 79"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#merge" title="Merge" shape="rect">Merge</a>    ::= 'MERGE' 'INTO' <a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a> 'USING' ( <a href="#table" title="Table" shape="rect">Table</a> | '(' <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ')' ) <a href="#alias" title="Alias" shape="rect">Alias</a>? 'ON' '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' ( <a href="#mergeupdateclause" title="MergeUpdateClause" shape="rect">MergeUpdateClause</a> <a href="#mergeinsertclause" title="MergeInsertClause" shape="rect">MergeInsertClause</a>? | <a href="#mergeinsertclause" title="MergeInsertClause" shape="rect">MergeInsertClause</a> <a href="#mergeupdateclause" title="MergeUpdateClause" shape="rect">MergeUpdateClause</a>? )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MergeUpdateClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="635" height="128"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">WHEN</text> + <rect x="69" y="29" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="73" y="41">MATCHED</text> + <rect x="129" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="133" y="41">THEN</text> + <rect x="169" y="29" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="173" y="41">UPDATE</text> + <rect x="221" y="29" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="41">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="273" y="29" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="277" y="41">Column</text></a><rect x="327" y="29" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="41">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="349" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="353" y="41">SimpleExpression</text></a><rect x="273" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="277" y="13">,</text> + <rect x="487" y="50" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="491" y="62">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="537" y="50" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="541" y="62">Expression</text></a><rect x="433" y="108" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="437" y="120">DELETE</text> + <rect x="481" y="108" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="485" y="120">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="531" y="108" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="535" y="120">Expression</text></a><path class="line" d="m17 38 h2 m0 0 h4 m38 0 h4 m0 0 h4 m52 0 h4 m0 0 h4 m32 0 h4 m0 0 h4 m44 0 h4 m0 0 h4 m24 0 h4 m20 0 h4 m46 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m-194 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m174 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-174 0 h4 m8 0 h4 m0 0 h158 m40 28 h10 m0 0 h108 m-138 0 h20 m118 0 h20 m-158 0 q10 0 10 10 m138 0 q0 -10 10 -10 m-148 10 v1 m138 0 v-1 m-138 1 q0 10 10 10 m118 0 q10 0 10 -10 m-128 10 h4 m42 0 h4 m0 0 h4 m60 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-236 58 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m40 0 h4 m0 0 h4 m42 0 h4 m0 0 h4 m60 0 h4 m23 -21 h-3"/> + <polygon points="625 96 633 92 633 100"/> + <polygon points="625 96 617 92 617 100"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#mergeupdateclause" title="MergeUpdateClause" shape="rect">MergeUpdateClause</a></div> + <div>         ::= 'WHEN' 'MATCHED' 'THEN' 'UPDATE' 'SET' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ( 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> )? ( 'DELETE' 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#merge" title="merge">merge</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MergeInsertClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="665" height="119"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">WHEN</text> + <rect x="69" y="29" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="73" y="41">NOT</text> + <rect x="105" y="29" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="109" y="41">MATCHED</text> + <rect x="165" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="41">THEN</text> + <rect x="205" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="209" y="41">INSERT</text> + <rect x="273" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="277" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="313" y="29" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="317" y="41">Column</text></a><rect x="313" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="317" y="13">,</text> + <rect x="387" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="41">)</text> + <rect x="427" y="29" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="431" y="41">VALUES</text> + <rect x="477" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="481" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="517" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="521" y="41">SimpleExpression</text></a><rect x="517" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="521" y="13">,</text> + <rect x="635" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="639" y="41">)</text> + <rect x="511" y="99" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="515" y="111">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="561" y="99" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="565" y="111">Expression</text></a><path class="line" d="m17 38 h2 m0 0 h4 m38 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m52 0 h4 m0 0 h4 m32 0 h4 m0 0 h4 m40 0 h4 m20 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h10 m0 0 h124 m20 -21 h4 m42 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m20 28 h4 m12 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-188 49 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h108 m-138 0 h20 m118 0 h20 m-158 0 q10 0 10 10 m138 0 q0 -10 10 -10 m-148 10 v1 m138 0 v-1 m-138 1 q0 10 10 10 m118 0 q10 0 10 -10 m-128 10 h4 m42 0 h4 m0 0 h4 m60 0 h4 m23 -21 h-3"/> + <polygon points="655 87 663 83 663 91"/> + <polygon points="655 87 647 83 647 91"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#mergeinsertclause" title="MergeInsertClause" shape="rect">MergeInsertClause</a></div> + <div>         ::= 'WHEN' 'NOT' 'MATCHED' 'THEN' 'INSERT' ( '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' )? 'VALUES' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ')' ( 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#merge" title="merge">merge</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectNameList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="443" height="94"> + <polygon points="9 43 1 39 1 47"/> + <polygon points="17 43 9 39 9 47"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="23" y="34" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="46">RelObjectNameExt</text></a><rect x="185" y="34" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="46">.</text> + <rect x="185" y="62" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="74">:</text> + <rect x="243" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="247" y="25">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="279" y="34" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="46">RelObjectNameExt2</text></a><path class="line" d="m17 43 h2 m0 0 h4 m94 0 h4 m60 0 h4 m8 0 h4 m0 0 h2 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v8 m38 0 v-8 m-38 8 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m40 -28 h10 m0 0 h6 m-36 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m16 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-16 0 h4 m8 0 h4 m20 21 h4 m100 0 h4 m-242 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -22 q0 -10 10 -10 m222 42 l20 0 m-20 0 q10 0 10 -10 l0 -22 q0 -10 -10 -10 m-222 0 h10 m0 0 h212 m-262 42 h20 m262 0 h20 m-302 0 q10 0 10 10 m282 0 q0 -10 10 -10 m-292 10 v29 m282 0 v-29 m-282 29 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h10 m0 0 h252 m23 -49 h-3"/> + <polygon points="433 43 441 39 441 47"/> + <polygon points="433 43 425 39 425 47"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div> + <div>         ::= <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a> ( ( '.' | ':' ) '.'* <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#column" title="column">column</a></li><li><a href="#createsynonym" title="createsynonym">createsynonym</a></li><li><a href="#execute" title="execute">execute</a></li><li><a href="#grant" title="grant">grant</a></li><li><a href="#index" title="index">index</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#nextvalexpression" title="nextvalexpression">nextvalexpression</a></li><li><a href="#sequence" title="sequence">sequence</a></li><li><a href="#synonym" title="synonym">synonym</a></li><li><a href="#table" title="table">table</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Column +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#column" title="Column" shape="rect">Column</a>   ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#comment" title="comment">comment</a></li><li><a href="#connectbyrootoperator" title="connectbyrootoperator">connectbyrootoperator</a></li><li><a href="#fulltextsearch" title="fulltextsearch">fulltextsearch</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#joinerexpression" title="joinerexpression">joinerexpression</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#mergeinsertclause" title="mergeinsertclause">mergeinsertclause</a></li><li><a href="#mergeupdateclause" title="mergeupdateclause">mergeupdateclause</a></li><li><a href="#pivotforcolumns" title="pivotforcolumns">pivotforcolumns</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#replace" title="replace">replace</a></li><li><a href="#update" title="update">update</a></li><li><a href="#upsert" title="upsert">upsert</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectNameWithoutValue +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="231" height="5985"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="43" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="43" y="29" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">S_QUOTED_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="43" y="57" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">K_DATE_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="43" y="85" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="97">K_DATETIMELITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-string-function-name" xlink:title="K_STRING_FUNCTION_NAME" shape="rect"> + <rect x="43" y="113" width="144" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="125">K_STRING_FUNCTION_NAME</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-isolation" xlink:title="K_ISOLATION" shape="rect"> + <rect x="43" y="141" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="153">K_ISOLATION</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-time-key-expr" xlink:title="K_TIME_KEY_EXPR" shape="rect"> + <rect x="43" y="169" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="181">K_TIME_KEY_EXPR</text></a><rect x="43" y="197" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="209">ACTION</text> + <rect x="43" y="225" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="237">ACTIVE</text> + <rect x="43" y="253" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="265">ADD</text> + <rect x="43" y="281" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="293">ADVANCE</text> + <rect x="43" y="309" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="321">ADVISE</text> + <rect x="43" y="337" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="349">AGAINST</text> + <rect x="43" y="365" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="377">ALGORITHM</text> + <rect x="43" y="393" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="405">ALTER</text> + <rect x="43" y="421" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="433">ANALYZE</text> + <rect x="43" y="449" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="461">APPLY</text> + <rect x="43" y="477" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="489">ARCHIVE</text> + <rect x="43" y="505" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="517">ARRAY</text> + <rect x="43" y="533" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="545">ASC</text> + <rect x="43" y="561" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="573">AT</text> + <rect x="43" y="589" width="86" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="601">AUTHORIZATION</text> + <rect x="43" y="617" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="629">BEGIN</text> + <rect x="43" y="645" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="657">BINARY</text> + <rect x="43" y="673" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="685">BIT</text> + <rect x="43" y="701" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="713">BUFFERS</text> + <rect x="43" y="729" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="741">BY</text> + <rect x="43" y="757" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="769">BYTE</text> + <rect x="43" y="785" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="797">BYTES</text> + <rect x="43" y="813" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="825">CACHE</text> + <rect x="43" y="841" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="853">CALL</text> + <rect x="43" y="869" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="881">CASCADE</text> + <rect x="43" y="897" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="909">CASE</text> + <rect x="43" y="925" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="937">CAST</text> + <rect x="43" y="953" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="965">CHANGE</text> + <rect x="43" y="981" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="993">CHANGES</text> + <rect x="43" y="1009" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1021">CHAR</text> + <rect x="43" y="1037" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1049">CHARACTER</text> + <rect x="43" y="1065" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1077">CHECKPOINT</text> + <rect x="43" y="1093" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1105">CLOSE</text> + <rect x="43" y="1121" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1133">COLLATE</text> + <rect x="43" y="1149" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1161">COLUMN</text> + <rect x="43" y="1177" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1189">COLUMNS</text> + <rect x="43" y="1205" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1217">COMMENT</text> + <rect x="43" y="1233" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1245">COMMIT</text> + <rect x="43" y="1261" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1273">CONFLICT</text> + <rect x="43" y="1289" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1301">COSTS</text> + <rect x="43" y="1317" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1329">CS</text> + <rect x="43" y="1345" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1357">CYCLE</text> + <rect x="43" y="1373" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1385">DATABASE</text> + <rect x="43" y="1401" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1413">DDL</text> + <rect x="43" y="1429" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1441">DECLARE</text> + <rect x="43" y="1457" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1469">DEFAULT</text> + <rect x="43" y="1485" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1497">DEFERRABLE</text> + <rect x="43" y="1513" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1525">DELAYED</text> + <rect x="43" y="1541" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1553">DELETE</text> + <rect x="43" y="1569" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1581">DESC</text> + <rect x="43" y="1597" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1609">DESCRIBE</text> + <rect x="43" y="1625" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1637">DISABLE</text> + <rect x="43" y="1653" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1665">DISCONNECT</text> + <rect x="43" y="1681" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1693">DIV</text> + <rect x="43" y="1709" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1721">DML</text> + <rect x="43" y="1737" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1749">DO</text> + <rect x="43" y="1765" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1777">DROP</text> + <rect x="43" y="1793" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1805">DUMP</text> + <rect x="43" y="1821" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1833">DUPLICATE</text> + <rect x="43" y="1849" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1861">EMIT</text> + <rect x="43" y="1877" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1889">ENABLE</text> + <rect x="43" y="1905" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1917">END</text> + <rect x="43" y="1933" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1945">ESCAPE</text> + <rect x="43" y="1961" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1973">EXCLUDE</text> + <rect x="43" y="1989" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2001">EXEC</text> + <rect x="43" y="2017" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2029">EXECUTE</text> + <rect x="43" y="2045" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2057">EXPLAIN</text> + <rect x="43" y="2073" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2085">EXTENDED</text> + <rect x="43" y="2101" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2113">EXTRACT</text> + <rect x="43" y="2129" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2141">FALSE</text> + <rect x="43" y="2157" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2169">FILTER</text> + <rect x="43" y="2185" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2197">FIRST</text> + <rect x="43" y="2213" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2225">FLUSH</text> + <rect x="43" y="2241" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2253">FN</text> + <rect x="43" y="2269" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2281">FOLLOWING</text> + <rect x="43" y="2297" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2309">FORMAT</text> + <rect x="43" y="2325" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2337">FULLTEXT</text> + <rect x="43" y="2353" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2365">FUNCTION</text> + <rect x="43" y="2381" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2393">GLOBAL</text> + <rect x="43" y="2409" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2421">GRANT</text> + <rect x="43" y="2437" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2449">GUARD</text> + <rect x="43" y="2465" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2477">HISTORY</text> + <rect x="43" y="2493" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2505">HOPPING</text> + <rect x="43" y="2521" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2533">INCLUDE</text> + <rect x="43" y="2549" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2561">INCREMENT</text> + <rect x="43" y="2577" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2589">INDEX</text> + <rect x="43" y="2605" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2617">INSERT</text> + <rect x="43" y="2633" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2645">INTERLEAVE</text> + <rect x="43" y="2661" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2673">ISNULL</text> + <rect x="43" y="2689" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2701">JSON</text> + <rect x="43" y="2717" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2729">KEEP</text> + <rect x="43" y="2745" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2757">KEY</text> + <rect x="43" y="2773" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2785">KEYS</text> + <rect x="43" y="2801" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2813">LAST</text> + <rect x="43" y="2829" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2841">LEADING</text> + <rect x="43" y="2857" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2869">LINK</text> + <rect x="43" y="2885" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2897">LOCAL</text> + <rect x="43" y="2913" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2925">LOCKED</text> + <rect x="43" y="2941" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2953">LOG</text> + <rect x="43" y="2969" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="2981">MATCH</text> + <rect x="43" y="2997" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3009">MATCHED</text> + <rect x="43" y="3025" width="74" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3037">MATERIALIZED</text> + <rect x="43" y="3053" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3065">MAXVALUE</text> + <rect x="43" y="3081" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3093">MERGE</text> + <rect x="43" y="3109" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3121">MINVALUE</text> + <rect x="43" y="3137" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3149">MODIFY</text> + <rect x="43" y="3165" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3177">MOVEMENT</text> + <rect x="43" y="3193" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3205">NEXT</text> + <rect x="43" y="3221" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3233">NO</text> + <rect x="43" y="3249" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3261">NOCACHE</text> + <rect x="43" y="3277" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3289">NOKEEP</text> + <rect x="43" y="3305" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3317">NOLOCK</text> + <rect x="43" y="3333" width="72" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3345">NOMAXVALUE</text> + <rect x="43" y="3361" width="70" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3373">NOMINVALUE</text> + <rect x="43" y="3389" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3401">NOORDER</text> + <rect x="43" y="3417" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3429">NOTHING</text> + <rect x="43" y="3445" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3457">NOVALIDATE</text> + <rect x="43" y="3473" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3485">NOWAIT</text> + <rect x="43" y="3501" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3513">NULLS</text> + <rect x="43" y="3529" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3541">OF</text> + <rect x="43" y="3557" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3569">OFF</text> + <rect x="43" y="3585" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3597">OPEN</text> + <rect x="43" y="3613" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3625">OVER</text> + <rect x="43" y="3641" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3653">OVERLAPS</text> + <rect x="43" y="3669" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3681">PARALLEL</text> + <rect x="43" y="3697" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3709">PARENT</text> + <rect x="43" y="3725" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3737">PARTITION</text> + <rect x="43" y="3753" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3765">PATH</text> + <rect x="43" y="3781" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3793">PERCENT</text> + <rect x="43" y="3809" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3821">PLACING</text> + <rect x="43" y="3837" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3849">PRECEDING</text> + <rect x="43" y="3865" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3877">PRECISION</text> + <rect x="43" y="3893" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3905">PRIMARY</text> + <rect x="43" y="3921" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3933">PRIOR</text> + <rect x="43" y="3949" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3961">PURGE</text> + <rect x="43" y="3977" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="3989">QUERY</text> + <rect x="43" y="4005" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4017">QUICK</text> + <rect x="43" y="4033" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4045">QUIESCE</text> + <rect x="43" y="4061" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4073">RANGE</text> + <rect x="43" y="4089" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4101">READ</text> + <rect x="43" y="4117" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4129">RECYCLEBIN</text> + <rect x="43" y="4145" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4157">REFERENCES</text> + <rect x="43" y="4173" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4185">REGISTER</text> + <rect x="43" y="4201" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4213">RENAME</text> + <rect x="43" y="4229" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4241">REPLACE</text> + <rect x="43" y="4257" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4269">RESET</text> + <rect x="43" y="4285" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4297">RESTART</text> + <rect x="43" y="4313" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4325">RESTRICT</text> + <rect x="43" y="4341" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4353">RESTRICTED</text> + <rect x="43" y="4369" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4381">RESUMABLE</text> + <rect x="43" y="4397" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4409">RESUME</text> + <rect x="43" y="4425" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4437">RLIKE</text> + <rect x="43" y="4453" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4465">ROLLBACK</text> + <rect x="43" y="4481" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4493">ROW</text> + <rect x="43" y="4509" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4521">ROWS</text> + <rect x="43" y="4537" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4549">RR</text> + <rect x="43" y="4565" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4577">RS</text> + <rect x="43" y="4593" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4605">SAVEPOINT</text> + <rect x="43" y="4621" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4633">SCHEMA</text> + <rect x="43" y="4649" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4661">SEPARATOR</text> + <rect x="43" y="4677" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4689">SEQUENCE</text> + <rect x="43" y="4705" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4717">SESSION</text> + <rect x="43" y="4733" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4745">SETS</text> + <rect x="43" y="4761" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4773">SHOW</text> + <rect x="43" y="4789" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4801">SHUTDOWN</text> + <rect x="43" y="4817" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4829">SIBLINGS</text> + <rect x="43" y="4845" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4857">SIGNED</text> + <rect x="43" y="4873" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4885">SIMILAR</text> + <rect x="43" y="4901" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4913">SIZE</text> + <rect x="43" y="4929" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4941">SKIP</text> + <rect x="43" y="4957" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4969">STORED</text> + <rect x="43" y="4985" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="4997">STRING</text> + <rect x="43" y="5013" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5025">SUSPEND</text> + <rect x="43" y="5041" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5053">SWITCH</text> + <rect x="43" y="5069" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5081">SYNONYM</text> + <rect x="43" y="5097" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5109">SYSTEM</text> + <rect x="43" y="5125" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5137">TABLE</text> + <rect x="43" y="5153" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5165">TABLESPACE</text> + <rect x="43" y="5181" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5193">TEMP</text> + <rect x="43" y="5209" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5221">TEMPORARY</text> + <rect x="43" y="5237" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5249">THEN</text> + <rect x="43" y="5265" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5277">TIMEOUT</text> + <rect x="43" y="5293" width="72" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5305">TIMESTAMPTZ</text> + <rect x="43" y="5321" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5333">TO</text> + <rect x="43" y="5349" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5361">TRUE</text> + <rect x="43" y="5377" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5389">TRUNCATE</text> + <rect x="43" y="5405" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5417">TUMBLING</text> + <rect x="43" y="5433" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5445">TYPE</text> + <rect x="43" y="5461" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5473">UNLOGGED</text> + <rect x="43" y="5489" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5501">UNQIESCE</text> + <rect x="43" y="5517" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5529">UNSIGNED</text> + <rect x="43" y="5545" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5557">UPDATE</text> + <rect x="43" y="5573" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5585">UPSERT</text> + <rect x="43" y="5601" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5613">UR</text> + <rect x="43" y="5629" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5641">USER</text> + <rect x="43" y="5657" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5669">VALIDATE</text> + <rect x="43" y="5685" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5697">VERBOSE</text> + <rect x="43" y="5713" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5725">VIEW</text> + <rect x="43" y="5741" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5753">WAIT</text> + <rect x="43" y="5769" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5781">WITHIN</text> + <rect x="43" y="5797" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5809">WITHOUT</text> + <rect x="43" y="5825" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5837">WORK</text> + <rect x="43" y="5853" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5865">XML</text> + <rect x="43" y="5881" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5893">XMLAGG</text> + <rect x="43" y="5909" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5921">XMLTEXT</text> + <rect x="43" y="5937" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5949">YAML</text> + <rect x="43" y="5965" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="5977">ZONE</text> + <path class="line" d="m17 10 h2 m20 0 h4 m74 0 h4 m0 0 h70 m-172 0 h20 m152 0 h20 m-192 0 q10 0 10 10 m172 0 q0 -10 10 -10 m-182 10 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m120 0 h4 m0 0 h24 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m88 0 h4 m0 0 h56 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m104 0 h4 m0 0 h40 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m144 0 h4 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m72 0 h4 m0 0 h72 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m98 0 h4 m0 0 h46 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m28 0 h4 m0 0 h116 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m64 0 h4 m0 0 h80 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m26 0 h4 m0 0 h118 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m86 0 h4 m0 0 h58 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m22 0 h4 m0 0 h122 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m62 0 h4 m0 0 h82 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m68 0 h4 m0 0 h76 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m54 0 h4 m0 0 h90 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m54 0 h4 m0 0 h90 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m26 0 h4 m0 0 h118 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m66 0 h4 m0 0 h78 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m68 0 h4 m0 0 h76 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m24 0 h4 m0 0 h120 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m28 0 h4 m0 0 h116 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m22 0 h4 m0 0 h122 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m58 0 h4 m0 0 h86 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m26 0 h4 m0 0 h118 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m66 0 h4 m0 0 h78 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m62 0 h4 m0 0 h82 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m62 0 h4 m0 0 h82 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m24 0 h4 m0 0 h120 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m28 0 h4 m0 0 h116 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m74 0 h4 m0 0 h70 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m58 0 h4 m0 0 h86 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m62 0 h4 m0 0 h82 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m22 0 h4 m0 0 h122 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m54 0 h4 m0 0 h90 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m72 0 h4 m0 0 h72 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m70 0 h4 m0 0 h74 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m68 0 h4 m0 0 h76 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m26 0 h4 m0 0 h118 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m58 0 h4 m0 0 h86 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m60 0 h4 m0 0 h84 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m60 0 h4 m0 0 h84 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m64 0 h4 m0 0 h80 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m66 0 h4 m0 0 h78 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m64 0 h4 m0 0 h80 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m62 0 h4 m0 0 h82 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m38 0 h4 m0 0 h106 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m60 0 h4 m0 0 h84 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m64 0 h4 m0 0 h80 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m66 0 h4 m0 0 h78 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m28 0 h4 m0 0 h116 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m42 0 h4 m0 0 h102 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m36 0 h4 m0 0 h108 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m64 0 h4 m0 0 h80 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m66 0 h4 m0 0 h78 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m72 0 h4 m0 0 h72 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m30 0 h4 m0 0 h114 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m60 0 h4 m0 0 h84 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m56 0 h4 m0 0 h88 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m20 0 h4 m0 0 h124 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m32 0 h4 m0 0 h112 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m52 0 h4 m0 0 h92 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m50 0 h4 m0 0 h94 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m44 0 h4 m0 0 h100 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m54 0 h4 m0 0 h90 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m40 0 h4 m0 0 h104 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m28 0 h4 m0 0 h116 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m46 0 h4 m0 0 h98 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m48 0 h4 m0 0 h96 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m34 0 h4 m0 0 h110 m23 -5964 h-3"/> + <polygon points="221 10 229 6 229 14"/> + <polygon points="221 10 213 6 213 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a></div> + <div>         ::= <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a></div> + <div>           | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a></div> + <div>           | <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a></div> + <div>           | <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a></div> + <div>           | <a href="#k-string-function-name" title="K_STRING_FUNCTION_NAME" shape="rect">K_STRING_FUNCTION_NAME</a></div> + <div>           | <a href="#k-isolation" title="K_ISOLATION" shape="rect">K_ISOLATION</a></div> + <div>           | <a href="#k-time-key-expr" title="K_TIME_KEY_EXPR" shape="rect">K_TIME_KEY_EXPR</a></div> + <div>           | 'ACTION'</div> + <div>           | 'ACTIVE'</div> + <div>           | 'ADD'</div> + <div>           | 'ADVANCE'</div> + <div>           | 'ADVISE'</div> + <div>           | 'AGAINST'</div> + <div>           | 'ALGORITHM'</div> + <div>           | 'ALTER'</div> + <div>           | 'ANALYZE'</div> + <div>           | 'APPLY'</div> + <div>           | 'ARCHIVE'</div> + <div>           | 'ARRAY'</div> + <div>           | 'ASC'</div> + <div>           | 'AT'</div> + <div>           | 'AUTHORIZATION'</div> + <div>           | 'BEGIN'</div> + <div>           | 'BINARY'</div> + <div>           | 'BIT'</div> + <div>           | 'BUFFERS'</div> + <div>           | 'BY'</div> + <div>           | 'BYTE'</div> + <div>           | 'BYTES'</div> + <div>           | 'CACHE'</div> + <div>           | 'CALL'</div> + <div>           | 'CASCADE'</div> + <div>           | 'CASE'</div> + <div>           | 'CAST'</div> + <div>           | 'CHANGE'</div> + <div>           | 'CHANGES'</div> + <div>           | 'CHAR'</div> + <div>           | 'CHARACTER'</div> + <div>           | 'CHECKPOINT'</div> + <div>           | 'CLOSE'</div> + <div>           | 'COLLATE'</div> + <div>           | 'COLUMN'</div> + <div>           | 'COLUMNS'</div> + <div>           | 'COMMENT'</div> + <div>           | 'COMMIT'</div> + <div>           | 'CONFLICT'</div> + <div>           | 'COSTS'</div> + <div>           | 'CS'</div> + <div>           | 'CYCLE'</div> + <div>           | 'DATABASE'</div> + <div>           | 'DDL'</div> + <div>           | 'DECLARE'</div> + <div>           | 'DEFAULT'</div> + <div>           | 'DEFERRABLE'</div> + <div>           | 'DELAYED'</div> + <div>           | 'DELETE'</div> + <div>           | 'DESC'</div> + <div>           | 'DESCRIBE'</div> + <div>           | 'DISABLE'</div> + <div>           | 'DISCONNECT'</div> + <div>           | 'DIV'</div> + <div>           | 'DML'</div> + <div>           | 'DO'</div> + <div>           | 'DROP'</div> + <div>           | 'DUMP'</div> + <div>           | 'DUPLICATE'</div> + <div>           | 'EMIT'</div> + <div>           | 'ENABLE'</div> + <div>           | 'END'</div> + <div>           | 'ESCAPE'</div> + <div>           | 'EXCLUDE'</div> + <div>           | 'EXEC'</div> + <div>           | 'EXECUTE'</div> + <div>           | 'EXPLAIN'</div> + <div>           | 'EXTENDED'</div> + <div>           | 'EXTRACT'</div> + <div>           | 'FALSE'</div> + <div>           | 'FILTER'</div> + <div>           | 'FIRST'</div> + <div>           | 'FLUSH'</div> + <div>           | 'FN'</div> + <div>           | 'FOLLOWING'</div> + <div>           | 'FORMAT'</div> + <div>           | 'FULLTEXT'</div> + <div>           | 'FUNCTION'</div> + <div>           | 'GLOBAL'</div> + <div>           | 'GRANT'</div> + <div>           | 'GUARD'</div> + <div>           | 'HISTORY'</div> + <div>           | 'HOPPING'</div> + <div>           | 'INCLUDE'</div> + <div>           | 'INCREMENT'</div> + <div>           | 'INDEX'</div> + <div>           | 'INSERT'</div> + <div>           | 'INTERLEAVE'</div> + <div>           | 'ISNULL'</div> + <div>           | 'JSON'</div> + <div>           | 'KEEP'</div> + <div>           | 'KEY'</div> + <div>           | 'KEYS'</div> + <div>           | 'LAST'</div> + <div>           | 'LEADING'</div> + <div>           | 'LINK'</div> + <div>           | 'LOCAL'</div> + <div>           | 'LOCKED'</div> + <div>           | 'LOG'</div> + <div>           | 'MATCH'</div> + <div>           | 'MATCHED'</div> + <div>           | 'MATERIALIZED'</div> + <div>           | 'MAXVALUE'</div> + <div>           | 'MERGE'</div> + <div>           | 'MINVALUE'</div> + <div>           | 'MODIFY'</div> + <div>           | 'MOVEMENT'</div> + <div>           | 'NEXT'</div> + <div>           | 'NO'</div> + <div>           | 'NOCACHE'</div> + <div>           | 'NOKEEP'</div> + <div>           | 'NOLOCK'</div> + <div>           | 'NOMAXVALUE'</div> + <div>           | 'NOMINVALUE'</div> + <div>           | 'NOORDER'</div> + <div>           | 'NOTHING'</div> + <div>           | 'NOVALIDATE'</div> + <div>           | 'NOWAIT'</div> + <div>           | 'NULLS'</div> + <div>           | 'OF'</div> + <div>           | 'OFF'</div> + <div>           | 'OPEN'</div> + <div>           | 'OVER'</div> + <div>           | 'OVERLAPS'</div> + <div>           | 'PARALLEL'</div> + <div>           | 'PARENT'</div> + <div>           | 'PARTITION'</div> + <div>           | 'PATH'</div> + <div>           | 'PERCENT'</div> + <div>           | 'PLACING'</div> + <div>           | 'PRECEDING'</div> + <div>           | 'PRECISION'</div> + <div>           | 'PRIMARY'</div> + <div>           | 'PRIOR'</div> + <div>           | 'PURGE'</div> + <div>           | 'QUERY'</div> + <div>           | 'QUICK'</div> + <div>           | 'QUIESCE'</div> + <div>           | 'RANGE'</div> + <div>           | 'READ'</div> + <div>           | 'RECYCLEBIN'</div> + <div>           | 'REFERENCES'</div> + <div>           | 'REGISTER'</div> + <div>           | 'RENAME'</div> + <div>           | 'REPLACE'</div> + <div>           | 'RESET'</div> + <div>           | 'RESTART'</div> + <div>           | 'RESTRICT'</div> + <div>           | 'RESTRICTED'</div> + <div>           | 'RESUMABLE'</div> + <div>           | 'RESUME'</div> + <div>           | 'RLIKE'</div> + <div>           | 'ROLLBACK'</div> + <div>           | 'ROW'</div> + <div>           | 'ROWS'</div> + <div>           | 'RR'</div> + <div>           | 'RS'</div> + <div>           | 'SAVEPOINT'</div> + <div>           | 'SCHEMA'</div> + <div>           | 'SEPARATOR'</div> + <div>           | 'SEQUENCE'</div> + <div>           | 'SESSION'</div> + <div>           | 'SETS'</div> + <div>           | 'SHOW'</div> + <div>           | 'SHUTDOWN'</div> + <div>           | 'SIBLINGS'</div> + <div>           | 'SIGNED'</div> + <div>           | 'SIMILAR'</div> + <div>           | 'SIZE'</div> + <div>           | 'SKIP'</div> + <div>           | 'STORED'</div> + <div>           | 'STRING'</div> + <div>           | 'SUSPEND'</div> + <div>           | 'SWITCH'</div> + <div>           | 'SYNONYM'</div> + <div>           | 'SYSTEM'</div> + <div>           | 'TABLE'</div> + <div>           | 'TABLESPACE'</div> + <div>           | 'TEMP'</div> + <div>           | 'TEMPORARY'</div> + <div>           | 'THEN'</div> + <div>           | 'TIMEOUT'</div> + <div>           | 'TIMESTAMPTZ'</div> + <div>           | 'TO'</div> + <div>           | 'TRUE'</div> + <div>           | 'TRUNCATE'</div> + <div>           | 'TUMBLING'</div> + <div>           | 'TYPE'</div> + <div>           | 'UNLOGGED'</div> + <div>           | 'UNQIESCE'</div> + <div>           | 'UNSIGNED'</div> + <div>           | 'UPDATE'</div> + <div>           | 'UPSERT'</div> + <div>           | 'UR'</div> + <div>           | 'USER'</div> + <div>           | 'VALIDATE'</div> + <div>           | 'VERBOSE'</div> + <div>           | 'VIEW'</div> + <div>           | 'WAIT'</div> + <div>           | 'WITHIN'</div> + <div>           | 'WITHOUT'</div> + <div>           | 'WORK'</div> + <div>           | 'XML'</div> + <div>           | 'XMLAGG'</div> + <div>           | 'XMLTEXT'</div> + <div>           | 'YAML'</div> + <div>           | 'ZONE'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alist" title="alist">alist</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#mysqlindexhint" title="mysqlindexhint">mysqlindexhint</a></li><li><a href="#relobjectname" title="relobjectname">relobjectname</a></li><li><a href="#relobjectnamewithoutstart" title="relobjectnamewithoutstart">relobjectnamewithoutstart</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectName +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="229" height="329"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutvalue" xlink:title="RelObjectNameWithoutValue" shape="rect"> + <rect x="43" y="1" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">RelObjectNameWithoutValue</text></a><rect x="43" y="29" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">GROUP</text> + <rect x="43" y="57" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">INTERVAL</text> + <rect x="43" y="85" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">ON</text> + <rect x="43" y="113" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">START</text> + <rect x="43" y="141" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="153">TOP</text> + <rect x="43" y="169" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="181">VALUE</text> + <rect x="43" y="197" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="209">VALUES</text> + <rect x="43" y="225" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="237">CREATE</text> + <rect x="43" y="253" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="265">TABLES</text> + <rect x="43" y="281" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="293">CONNECT</text> + <rect x="43" y="309" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="321">IGNORE</text> + <path class="line" d="m17 10 h2 m20 0 h4 m142 0 h4 m-170 0 h20 m150 0 h20 m-190 0 q10 0 10 10 m170 0 q0 -10 10 -10 m-180 10 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m52 0 h4 m0 0 h90 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m22 0 h4 m0 0 h120 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m36 0 h4 m0 0 h106 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m26 0 h4 m0 0 h116 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m36 0 h4 m0 0 h106 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m52 0 h4 m0 0 h90 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m44 0 h4 m0 0 h98 m23 -308 h-3"/> + <polygon points="219 10 227 6 227 14"/> + <polygon points="219 10 211 6 211 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a></div> + <div>         ::= <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a></div> + <div>           | 'GROUP'</div> + <div>           | 'INTERVAL'</div> + <div>           | 'ON'</div> + <div>           | 'START'</div> + <div>           | 'TOP'</div> + <div>           | 'VALUE'</div> + <div>           | 'VALUES'</div> + <div>           | 'CREATE'</div> + <div>           | 'TABLES'</div> + <div>           | 'CONNECT'</div> + <div>           | 'IGNORE'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alias" title="alias">alias</a></li><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#alterexpressioncolumndatatype" title="alterexpressioncolumndatatype">alterexpressioncolumndatatype</a></li><li><a href="#alterexpressioncolumndropdefault" title="alterexpressioncolumndropdefault">alterexpressioncolumndropdefault</a></li><li><a href="#alterexpressioncolumndropnotnull" title="alterexpressioncolumndropnotnull">alterexpressioncolumndropnotnull</a></li><li><a href="#columndefinition" title="columndefinition">columndefinition</a></li><li><a href="#columnnameswithparamslist" title="columnnameswithparamslist">columnnameswithparamslist</a></li><li><a href="#columnsnameslistitem" title="columnsnameslistitem">columnsnameslistitem</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#declare" title="declare">declare</a></li><li><a href="#extractexpression" title="extractexpression">extractexpression</a></li><li><a href="#funcargslistitem" title="funcargslistitem">funcargslistitem</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#relobjectnameext" title="relobjectnameext">relobjectnameext</a></li><li><a href="#reset" title="reset">reset</a></li><li><a href="#sqlserverhint" title="sqlserverhint">sqlserverhint</a></li><li><a href="#userslist" title="userslist">userslist</a></li><li><a href="#valueslist" title="valueslist">valueslist</a></li><li><a href="#withitem" title="withitem">withitem</a></li><li><a href="#windowfun" title="windowfun">windowfun</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectNameWithoutStart +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="229" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutvalue" xlink:title="RelObjectNameWithoutValue" shape="rect"> + <rect x="43" y="1" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">RelObjectNameWithoutValue</text></a><rect x="43" y="29" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">TOP</text> + <rect x="43" y="57" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">VALUE</text> + <rect x="43" y="85" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">VALUES</text> + <rect x="43" y="113" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">INTERVAL</text> + <path class="line" d="m17 10 h2 m20 0 h4 m142 0 h4 m-170 0 h20 m150 0 h20 m-190 0 q10 0 10 10 m170 0 q0 -10 10 -10 m-180 10 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m26 0 h4 m0 0 h116 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m36 0 h4 m0 0 h106 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m52 0 h4 m0 0 h90 m23 -112 h-3"/> + <polygon points="219 10 227 6 227 14"/> + <polygon points="219 10 211 6 211 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectnamewithoutstart" title="RelObjectNameWithoutStart" shape="rect">RelObjectNameWithoutStart</a></div> + <div>         ::= <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a></div> + <div>           | 'TOP'</div> + <div>           | 'VALUE'</div> + <div>           | 'VALUES'</div> + <div>           | 'INTERVAL'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alias" title="alias">alias</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectNameExt +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="167" height="525"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="43" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">RelObjectName</text></a><rect x="43" y="29" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">ALL</text> + <rect x="43" y="57" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">ANY</text> + <rect x="43" y="85" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">SOME</text> + <rect x="43" y="113" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">LEFT</text> + <rect x="43" y="141" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="153">RIGHT</text> + <rect x="43" y="169" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="181">SET</text> + <rect x="43" y="197" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="209">DOUBLE</text> + <rect x="43" y="225" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="237">IF</text> + <rect x="43" y="253" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="265">IIF</text> + <rect x="43" y="281" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="293">OPTIMIZE</text> + <rect x="43" y="309" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="321">LIMIT</text> + <rect x="43" y="337" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="349">OFFSET</text> + <rect x="43" y="365" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="377">PROCEDURE</text> + <rect x="43" y="393" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="405">PUBLIC</text> + <rect x="43" y="421" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="433">CASEWHEN</text> + <rect x="43" y="449" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="461">IN</text> + <rect x="43" y="477" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="489">GROUPING</text> + <rect x="43" y="505" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="517">ORDER</text> + <path class="line" d="m17 10 h2 m20 0 h4 m80 0 h4 m-108 0 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m24 0 h4 m0 0 h56 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m26 0 h4 m0 0 h54 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m36 0 h4 m0 0 h44 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m28 0 h4 m0 0 h52 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m36 0 h4 m0 0 h44 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m24 0 h4 m0 0 h56 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m46 0 h4 m0 0 h34 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m16 0 h4 m0 0 h64 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m20 0 h4 m0 0 h60 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m52 0 h4 m0 0 h28 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m34 0 h4 m0 0 h46 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m42 0 h4 m0 0 h38 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m64 0 h4 m0 0 h16 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m40 0 h4 m0 0 h40 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m62 0 h4 m0 0 h18 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m18 0 h4 m0 0 h62 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m58 0 h4 m0 0 h22 m-98 -10 v20 m108 0 v-20 m-108 20 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m40 0 h4 m0 0 h40 m23 -504 h-3"/> + <polygon points="157 10 165 6 165 14"/> + <polygon points="157 10 149 6 149 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a></div> + <div>           | 'ALL'</div> + <div>           | 'ANY'</div> + <div>           | 'SOME'</div> + <div>           | 'LEFT'</div> + <div>           | 'RIGHT'</div> + <div>           | 'SET'</div> + <div>           | 'DOUBLE'</div> + <div>           | 'IF'</div> + <div>           | 'IIF'</div> + <div>           | 'OPTIMIZE'</div> + <div>           | 'LIMIT'</div> + <div>           | 'OFFSET'</div> + <div>           | 'PROCEDURE'</div> + <div>           | 'PUBLIC'</div> + <div>           | 'CASEWHEN'</div> + <div>           | 'IN'</div> + <div>           | 'GROUPING'</div> + <div>           | 'ORDER'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#relobjectnameext2" title="relobjectnameext2">relobjectnameext2</a></li><li><a href="#relobjectnamelist" title="relobjectnamelist">relobjectnamelist</a></li><li><a href="#set" title="set">set</a></li><li><a href="#show" title="show">show</a></li><li><a href="#showcolumns" title="showcolumns">showcolumns</a></li><li><a href="#showtables" title="showtables">showtables</a></li><li><a href="#simplejdbcnamedparameter" title="simplejdbcnamedparameter">simplejdbcnamedparameter</a></li><li><a href="#use" title="use">use</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RelObjectNameExt2 +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="181" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="43" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">RelObjectNameExt</text></a><rect x="43" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-select" xlink:title="K_SELECT" shape="rect"> + <rect x="43" y="57" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">K_SELECT</text></a><rect x="43" y="85" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">CURRENT</text> + <path class="line" d="m17 10 h2 m20 0 h4 m94 0 h4 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m36 0 h4 m0 0 h58 m-112 -10 v20 m122 0 v-20 m-122 20 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m56 0 h4 m0 0 h38 m-112 -10 v20 m122 0 v-20 m-122 20 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m50 0 h4 m0 0 h44 m23 -84 h-3"/> + <polygon points="171 10 179 6 179 14"/> + <polygon points="171 10 163 6 163 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a></div> + <div>         ::= <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div> + <div>           | 'FROM'</div> + <div>           | <a href="#k-select" title="K_SELECT" shape="rect">K_SELECT</a></div> + <div>           | 'CURRENT'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#insertconflicttarget" title="insertconflicttarget">insertconflicttarget</a></li><li><a href="#jdbcnamedparameter" title="jdbcnamedparameter">jdbcnamedparameter</a></li><li><a href="#oraclenamedfunctionparameter" title="oraclenamedfunctionparameter">oraclenamedfunctionparameter</a></li><li><a href="#relobjectnamelist" title="relobjectnamelist">relobjectnamelist</a></li><li><a href="#uservariable" title="uservariable">uservariable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Table +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#table" title="Table" shape="rect">Table</a>    ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alltablecolumns" title="alltablecolumns">alltablecolumns</a></li><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#altertable" title="altertable">altertable</a></li><li><a href="#alterview" title="alterview">alterview</a></li><li><a href="#analyze" title="analyze">analyze</a></li><li><a href="#comment" title="comment">comment</a></li><li><a href="#createindex" title="createindex">createindex</a></li><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#createview" title="createview">createview</a></li><li><a href="#describe" title="describe">describe</a></li><li><a href="#drop" title="drop">drop</a></li><li><a href="#fromitem" title="fromitem">fromitem</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#intoclause" title="intoclause">intoclause</a></li><li><a href="#merge" title="merge">merge</a></li><li><a href="#outputclause" title="outputclause">outputclause</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#purgestatement" title="purgestatement">purgestatement</a></li><li><a href="#renametablestatement" title="renametablestatement">renametablestatement</a></li><li><a href="#replace" title="replace">replace</a></li><li><a href="#spannerinterleavein" title="spannerinterleavein">spannerinterleavein</a></li><li><a href="#tablewithalias" title="tablewithalias">tablewithalias</a></li><li><a href="#truncate" title="truncate">truncate</a></li><li><a href="#upsert" title="upsert">upsert</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + TableWithAlias +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="159" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="23" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="85" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="149 10 157 6 157 14"/> + <polygon points="149 10 141 6 141 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#tablewithalias" title="TableWithAlias" shape="rect">TableWithAlias</a></div> + <div>         ::= <a href="#table" title="Table" shape="rect">Table</a> <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#merge" title="merge">merge</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SelectWithWithItems +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="217" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withlist" xlink:title="WithList" shape="rect"> + <rect x="63" y="1" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="13">WithList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#select" xlink:title="Select" shape="rect"> + <rect x="117" y="1" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="13">Select</text></a><rect x="161" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withlist" xlink:title="WithList" shape="rect"> + <rect x="63" y="50" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="62">WithList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#select" xlink:title="Select" shape="rect"> + <rect x="137" y="29" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="141" y="41">Select</text></a><path class="line" d="m17 10 h2 m20 0 h4 m12 0 h4 m0 0 h4 m46 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m12 0 h4 m-158 0 h20 m138 0 h20 m-178 0 q10 0 10 10 m158 0 q0 -10 10 -10 m-168 10 v8 m158 0 v-8 m-158 8 q0 10 10 10 m138 0 q10 0 10 -10 m-128 10 h10 m0 0 h44 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v1 m74 0 v-1 m-74 1 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m20 -21 h4 m36 0 h4 m23 -28 h-3"/> + <polygon points="207 10 215 6 215 14"/> + <polygon points="207 10 199 6 199 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a></div> + <div>         ::= '(' <a href="#withlist" title="WithList" shape="rect">WithList</a> <a href="#select" title="Select" shape="rect">Select</a> ')'</div> + <div>           | <a href="#withlist" title="WithList" shape="rect">WithList</a>? <a href="#select" title="Select" shape="rect">Select</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#createview" title="createview">createview</a></li><li><a href="#explain" title="explain">explain</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#upsert" title="upsert">upsert</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Select +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="107" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="23" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SelectBody</text></a><path class="line" d="m17 10 h2 m0 0 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="97 10 105 6 105 14"/> + <polygon points="97 10 89 6 89 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#select" title="Select" shape="rect">Select</a>   ::= <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#selectwithwithitems" title="selectwithwithitems">selectwithwithitems</a></li><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SelectBody +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="131" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#setoperationlist" xlink:title="SetOperationList" shape="rect"> + <rect x="23" y="1" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SetOperationList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m84 0 h4 m3 0 h-3"/> + <polygon points="121 10 129 6 129 14"/> + <polygon points="121 10 113 6 113 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a></div> + <div>         ::= <a href="#setoperationlist" title="SetOperationList" shape="rect">SetOperationList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterview" title="alterview">alterview</a></li><li><a href="#pivotxml" title="pivotxml">pivotxml</a></li><li><a href="#select" title="select">select</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li><li><a href="#setoperationlistwithoutintialselect" title="setoperationlistwithoutintialselect">setoperationlistwithoutintialselect</a></li><li><a href="#subselect" title="subselect">subselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PlainSelect +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="779" height="626"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-select" xlink:title="K_SELECT" shape="rect"> + <rect x="23" y="1" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">K_SELECT</text></a><rect x="107" y="22" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="34">STRAIGHT_JOIN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#skip" xlink:title="Skip" shape="rect"> + <rect x="237" y="22" width="28" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="34">Skip</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#first" xlink:title="First" shape="rect"> + <rect x="313" y="22" width="26" height="18" class="nonterminal"/> + <text class="nonterminal" x="317" y="34">First</text></a><rect x="387" y="22" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="34">ALL</text> + <rect x="387" y="50" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="62">DISTINCT</text> + <rect x="465" y="71" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="469" y="83">ON</text> + <rect x="495" y="71" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="499" y="83">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="515" y="71" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="519" y="83">SelectItemsList</text></a><rect x="601" y="71" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="605" y="83">)</text> + <rect x="387" y="99" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="111">UNIQUE</text> + <rect x="387" y="127" width="132" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="139">SQL_CALC_FOUND_ROWS</text> + <rect x="387" y="155" width="84" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="167">SQL_NO_CACHE</text> + <rect x="387" y="183" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="391" y="195">SQL_CACHE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#top" xlink:title="Top" shape="rect"> + <rect x="681" y="22" width="26" height="18" class="nonterminal"/> + <text class="nonterminal" x="685" y="34">Top</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="61" y="225" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="65" y="237">SelectItemsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#intoclause" xlink:title="IntoClause" shape="rect"> + <rect x="167" y="246" width="58" height="18" class="nonterminal"/> + <text class="nonterminal" x="171" y="258">IntoClause</text></a><rect x="273" y="246" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="277" y="258">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fromitem" xlink:title="FromItem" shape="rect"> + <rect x="317" y="246" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="321" y="258">FromItem</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinslist" xlink:title="JoinsList" shape="rect"> + <rect x="379" y="246" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="383" y="258">JoinsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#ksqlwindowclause" xlink:title="KSQLWindowClause" shape="rect"> + <rect x="473" y="246" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="477" y="258">KSQLWindowClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whereclause" xlink:title="WhereClause" shape="rect"> + <rect x="625" y="246" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="629" y="258">WhereClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#oraclehierarchicalqueryclause" xlink:title="OracleHierarchicalQueryClause" shape="rect"> + <rect x="111" y="300" width="146" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="312">OracleHierarchicalQueryClause</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#groupbycolumnreferences" xlink:title="GroupByColumnReferences" shape="rect"> + <rect x="305" y="300" width="136" height="18" class="nonterminal"/> + <text class="nonterminal" x="309" y="312">GroupByColumnReferences</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#having" xlink:title="Having" shape="rect"> + <rect x="489" y="300" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="493" y="312">Having</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="577" y="300" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="581" y="312">OrderByElements</text></a><rect x="37" y="370" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="382">WINDOW</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="121" y="370" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="125" y="382">RelObjectName</text></a><rect x="209" y="370" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="213" y="382">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowdefinition" xlink:title="windowDefinition" shape="rect"> + <rect x="237" y="370" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="382">windowDefinition</text></a><rect x="121" y="342" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="354">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="389" y="391" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="393" y="403">OrderByElements</text></a><rect x="527" y="391" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="403">EMIT</text> + <rect x="565" y="391" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="569" y="403">CHANGES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#limitwithoffset" xlink:title="LimitWithOffset" shape="rect"> + <rect x="665" y="391" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="669" y="403">LimitWithOffset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#offset" xlink:title="Offset" shape="rect"> + <rect x="210" y="445" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="214" y="457">Offset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#limitwithoffset" xlink:title="LimitWithOffset" shape="rect"> + <rect x="294" y="445" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="298" y="457">LimitWithOffset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fetch" xlink:title="Fetch" shape="rect"> + <rect x="418" y="445" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="422" y="457">Fetch</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withisolation" xlink:title="WithIsolation" shape="rect"> + <rect x="500" y="445" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="504" y="457">WithIsolation</text></a><rect x="135" y="499" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="139" y="511">FOR</text> + <rect x="169" y="499" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="173" y="511">UPDATE</text> + <rect x="241" y="520" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="532">OF</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="269" y="520" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="273" y="532">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#wait" xlink:title="Wait" shape="rect"> + <rect x="351" y="520" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="355" y="532">Wait</text></a><rect x="429" y="520" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="433" y="532">NOWAIT</text> + <rect x="429" y="548" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="433" y="560">SKIP</text> + <rect x="467" y="548" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="471" y="560">LOCKED</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#optimizefor" xlink:title="OptimizeFor" shape="rect"> + <rect x="579" y="499" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="583" y="511">OptimizeFor</text></a><rect x="495" y="606" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="499" y="618">FOR</text> + <rect x="529" y="606" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="533" y="618">XML</text> + <rect x="565" y="606" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="569" y="618">PATH</text> + <rect x="605" y="606" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="609" y="618">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="625" y="606" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="629" y="618">S_CHAR_LITERAL</text></a><rect x="723" y="606" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="727" y="618">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m56 0 h4 m20 0 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m40 -21 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m40 -21 h10 m0 0 h24 m-54 0 h20 m34 0 h20 m-74 0 q10 0 10 10 m54 0 q0 -10 10 -10 m-64 10 v1 m54 0 v-1 m-54 1 q0 10 10 10 m34 0 q10 0 10 -10 m-44 10 h4 m26 0 h4 m40 -21 h10 m0 0 h244 m-274 0 h20 m254 0 h20 m-294 0 q10 0 10 10 m274 0 q0 -10 10 -10 m-284 10 v1 m274 0 v-1 m-274 1 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m24 0 h4 m0 0 h222 m-264 -10 v20 m274 0 v-20 m-274 20 v8 m274 0 v-8 m-274 8 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m50 0 h4 m20 0 h10 m0 0 h146 m-176 0 h20 m156 0 h20 m-196 0 q10 0 10 10 m176 0 q0 -10 10 -10 m-186 10 v1 m176 0 v-1 m-176 1 q0 10 10 10 m156 0 q10 0 10 -10 m-166 10 h4 m22 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m78 0 h4 m0 0 h4 m12 0 h4 m-244 -31 v20 m274 0 v-20 m-274 20 v29 m274 0 v-29 m-274 29 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m44 0 h4 m0 0 h202 m-264 -10 v20 m274 0 v-20 m-274 20 v8 m274 0 v-8 m-274 8 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m132 0 h4 m0 0 h114 m-264 -10 v20 m274 0 v-20 m-274 20 v8 m274 0 v-8 m-274 8 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m84 0 h4 m0 0 h162 m-264 -10 v20 m274 0 v-20 m-274 20 v8 m274 0 v-8 m-274 8 q0 10 10 10 m254 0 q10 0 10 -10 m-264 10 h4 m64 0 h4 m0 0 h182 m40 -182 h10 m0 0 h24 m-54 0 h20 m34 0 h20 m-74 0 q10 0 10 10 m54 0 q0 -10 10 -10 m-64 10 v1 m54 0 v-1 m-54 1 q0 10 10 10 m34 0 q10 0 10 -10 m-44 10 h4 m26 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-698 224 l2 0 m2 0 l2 0 m2 0 l2 0 m2 0 h4 m78 0 h4 m20 0 h10 m0 0 h56 m-86 0 h20 m66 0 h20 m-106 0 q10 0 10 10 m86 0 q0 -10 10 -10 m-96 10 v1 m86 0 v-1 m-86 1 q0 10 10 10 m66 0 q10 0 10 -10 m-76 10 h4 m58 0 h4 m40 -21 h10 m0 0 h150 m-180 0 h20 m160 0 h20 m-200 0 q10 0 10 10 m180 0 q0 -10 10 -10 m-190 10 v1 m180 0 v-1 m-180 1 q0 10 10 10 m160 0 q10 0 10 -10 m-170 10 h4 m36 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m46 0 h4 m40 -21 h10 m0 0 h102 m-132 0 h20 m112 0 h20 m-152 0 q10 0 10 10 m132 0 q0 -10 10 -10 m-142 10 v1 m132 0 v-1 m-132 1 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m104 0 h4 m40 -21 h10 m0 0 h70 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v1 m100 0 v-1 m-100 1 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-658 54 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h144 m-174 0 h20 m154 0 h20 m-194 0 q10 0 10 10 m174 0 q0 -10 10 -10 m-184 10 v1 m174 0 v-1 m-174 1 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m146 0 h4 m40 -21 h10 m0 0 h134 m-164 0 h20 m144 0 h20 m-184 0 q10 0 10 10 m164 0 q0 -10 10 -10 m-174 10 v1 m164 0 v-1 m-164 1 q0 10 10 10 m144 0 q10 0 10 -10 m-154 10 h4 m136 0 h4 m40 -21 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-702 91 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m56 0 h4 m20 0 h4 m80 0 h4 m0 0 h4 m20 0 h4 m0 0 h4 m84 0 h4 m-228 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m208 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-208 0 h4 m8 0 h4 m0 0 h192 m-312 28 h20 m312 0 h20 m-352 0 q10 0 10 10 m332 0 q0 -10 10 -10 m-342 10 v1 m332 0 v-1 m-332 1 q0 10 10 10 m312 0 q10 0 10 -10 m-322 10 h10 m0 0 h302 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m30 0 h4 m0 0 h4 m52 0 h4 m40 -21 h10 m0 0 h74 m-104 0 h20 m84 0 h20 m-124 0 q10 0 10 10 m104 0 q0 -10 10 -10 m-114 10 v1 m104 0 v-1 m-104 1 q0 10 10 10 m84 0 q10 0 10 -10 m-94 10 h4 m76 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-603 54 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -21 h10 m0 0 h74 m-104 0 h20 m84 0 h20 m-124 0 q10 0 10 10 m104 0 q0 -10 10 -10 m-114 10 v1 m104 0 v-1 m-104 1 q0 10 10 10 m84 0 q10 0 10 -10 m-94 10 h4 m76 0 h4 m40 -21 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m40 -21 h10 m0 0 h66 m-96 0 h20 m76 0 h20 m-116 0 q10 0 10 10 m96 0 q0 -10 10 -10 m-106 10 v1 m96 0 v-1 m-96 1 q0 10 10 10 m76 0 q10 0 10 -10 m-86 10 h4 m68 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-505 54 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h394 m-424 0 h20 m404 0 h20 m-444 0 q10 0 10 10 m424 0 q0 -10 10 -10 m-434 10 v1 m424 0 v-1 m-424 1 q0 10 10 10 m404 0 q10 0 10 -10 m-414 10 h4 m26 0 h4 m0 0 h4 m44 0 h4 m20 0 h10 m0 0 h60 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v1 m90 0 v-1 m-90 1 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m20 0 h4 m0 0 h4 m34 0 h4 m40 -21 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m40 -21 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m48 0 h4 m0 0 h34 m-100 -10 v20 m110 0 v-20 m-110 20 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m30 0 h4 m0 0 h4 m44 0 h4 m60 -70 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m64 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-220 107 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h238 m-268 0 h20 m248 0 h20 m-288 0 q10 0 10 10 m268 0 q0 -10 10 -10 m-278 10 v1 m268 0 v-1 m-268 1 q0 10 10 10 m248 0 q10 0 10 -10 m-258 10 h4 m26 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m32 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m12 0 h4 m23 -21 h-3"/> + <polygon points="769 594 777 590 777 598"/> + <polygon points="769 594 761 590 761 598"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#plainselect" title="PlainSelect" shape="rect">PlainSelect</a></div> + <div>         ::= <a href="#k-select" title="K_SELECT" shape="rect">K_SELECT</a> 'STRAIGHT_JOIN'? <a href="#skip" title="Skip" shape="rect">Skip</a>? <a href="#first" title="First" shape="rect">First</a>? ( 'ALL' | 'DISTINCT' ( 'ON' '(' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> ')' )? | 'UNIQUE' | 'SQL_CALC_FOUND_ROWS' | 'SQL_NO_CACHE' | 'SQL_CACHE' )? <a href="#top" title="Top" shape="rect">Top</a>? <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> <a href="#intoclause" title="IntoClause" shape="rect">IntoClause</a>? ( 'FROM' <a href="#fromitem" title="FromItem" shape="rect">FromItem</a> <a href="#joinslist" title="JoinsList" shape="rect">JoinsList</a> )? <a href="#ksqlwindowclause" title="KSQLWindowClause" shape="rect">KSQLWindowClause</a>? <a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a>? <a href="#oraclehierarchicalqueryclause" title="OracleHierarchicalQueryClause" shape="rect">OracleHierarchicalQueryClause</a>? <a href="#groupbycolumnreferences" title="GroupByColumnReferences" shape="rect">GroupByColumnReferences</a>? <a href="#having" title="Having" shape="rect">Having</a>? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? ( 'WINDOW' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'AS' <a href="#windowdefinition" title="windowDefinition" shape="rect">windowDefinition</a> ( ',' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'AS' <a href="#windowdefinition" title="windowDefinition" shape="rect">windowDefinition</a> )* )? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? ( 'EMIT' 'CHANGES' )? <a href="#limitwithoffset" title="LimitWithOffset" shape="rect">LimitWithOffset</a>? <a href="#offset" title="Offset" shape="rect">Offset</a>? <a href="#limitwithoffset" title="LimitWithOffset" shape="rect">LimitWithOffset</a>? <a href="#fetch" title="Fetch" shape="rect">Fetch</a>? <a href="#withisolation" title="WithIsolation" shape="rect">WithIsolation</a>? ( 'FOR' 'UPDATE' ( 'OF' <a href="#table" title="Table" shape="rect">Table</a> )? <a href="#wait" title="Wait" shape="rect">Wait</a>? ( 'NOWAIT' | 'SKIP' 'LOCKED' )? )? <a href="#optimizefor" title="OptimizeFor" shape="rect">OptimizeFor</a>? ( 'FOR' 'XML' 'PATH' '(' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SetOperationList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="771" height="238"> + <polygon points="9 171 1 167 1 175"/> + <polygon points="17 171 9 167 9 175"/> + <rect x="63" y="162" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="174">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="83" y="162" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="174">SelectBody</text></a><rect x="151" y="162" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="155" y="174">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#plainselect" xlink:title="PlainSelect" shape="rect"> + <rect x="63" y="190" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="202">PlainSelect</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#values" xlink:title="Values" shape="rect"> + <rect x="63" y="218" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="230">Values</text></a><rect x="63" y="106" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="118">ALL</text> + <rect x="63" y="134" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="146">DISTINCT</text> + <rect x="141" y="85" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="97">UNION</text> + <rect x="43" y="57" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">INTERSECT</text> + <rect x="43" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">MINUS</text> + <rect x="43" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">EXCEPT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="231" y="183" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="235" y="195">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#limitwithoffset" xlink:title="LimitWithOffset" shape="rect"> + <rect x="369" y="183" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="373" y="195">LimitWithOffset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#offset" xlink:title="Offset" shape="rect"> + <rect x="493" y="183" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="497" y="195">Offset</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fetch" xlink:title="Fetch" shape="rect"> + <rect x="577" y="183" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="581" y="195">Fetch</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withisolation" xlink:title="WithIsolation" shape="rect"> + <rect x="659" y="183" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="663" y="195">WithIsolation</text></a><path class="line" d="m17 171 h2 m40 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m-128 0 h20 m108 0 h20 m-148 0 q10 0 10 10 m128 0 q0 -10 10 -10 m-138 10 v8 m128 0 v-8 m-128 8 q0 10 10 10 m108 0 q10 0 10 -10 m-118 10 h4 m56 0 h4 m0 0 h44 m-118 -10 v20 m128 0 v-20 m-128 20 v8 m128 0 v-8 m-128 8 q0 10 10 10 m108 0 q10 0 10 -10 m-118 10 h4 m40 0 h4 m0 0 h60 m-148 -56 l20 0 m-1 0 q-9 0 -9 -10 l0 -57 q0 -10 10 -10 m148 77 l20 0 m-20 0 q10 0 10 -10 l0 -57 q0 -10 -10 -10 m-128 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m24 0 h4 m0 0 h26 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -49 h4 m40 0 h4 m0 0 h2 m-158 10 l0 -28 q0 -10 10 -10 m158 38 l0 -28 q0 -10 -10 -10 m-148 0 h4 m58 0 h4 m0 0 h82 m-158 10 l0 -28 q0 -10 10 -10 m158 38 l0 -28 q0 -10 -10 -10 m-148 0 h4 m40 0 h4 m0 0 h100 m-158 10 l0 -28 q0 -10 10 -10 m158 38 l0 -28 q0 -10 -10 -10 m-148 0 h4 m42 0 h4 m0 0 h98 m40 161 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h74 m-104 0 h20 m84 0 h20 m-124 0 q10 0 10 10 m104 0 q0 -10 10 -10 m-114 10 v1 m104 0 v-1 m-104 1 q0 10 10 10 m84 0 q10 0 10 -10 m-94 10 h4 m76 0 h4 m40 -21 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -21 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m40 -21 h10 m0 0 h66 m-96 0 h20 m76 0 h20 m-116 0 q10 0 10 10 m96 0 q0 -10 10 -10 m-106 10 v1 m96 0 v-1 m-96 1 q0 10 10 10 m76 0 q10 0 10 -10 m-86 10 h4 m68 0 h4 m23 -21 h-3"/> + <polygon points="761 171 769 167 769 175"/> + <polygon points="761 171 753 167 753 175"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#setoperationlist" title="SetOperationList" shape="rect">SetOperationList</a></div> + <div>         ::= ( '(' <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a> ')' | <a href="#plainselect" title="PlainSelect" shape="rect">PlainSelect</a> | <a href="#values" title="Values" shape="rect">Values</a> ) ( ( 'UNION' ( 'ALL' | 'DISTINCT' )? | 'INTERSECT' | 'MINUS' | 'EXCEPT' ) ( '(' + <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a> ')' | <a href="#plainselect" title="PlainSelect" shape="rect">PlainSelect</a> | <a href="#values" title="Values" shape="rect">Values</a> ) )* <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? <a href="#limitwithoffset" title="LimitWithOffset" shape="rect">LimitWithOffset</a>? <a href="#offset" title="Offset" shape="rect">Offset</a>? <a href="#fetch" title="Fetch" shape="rect">Fetch</a>? <a href="#withisolation" title="WithIsolation" shape="rect">WithIsolation</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#selectbody" title="selectbody">selectbody</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SetOperationListWithoutIntialSelect +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="373" height="166"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="63" y="13" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="25">UNION</text> + <rect x="131" y="34" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="46">ALL</text> + <rect x="131" y="62" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="74">DISTINCT</text> + <rect x="63" y="90" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="102">INTERSECT</text> + <rect x="63" y="118" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="130">MINUS</text> + <rect x="63" y="146" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="158">EXCEPT</text> + <rect x="229" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="233" y="25">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="249" y="13" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="253" y="25">SelectBody</text></a><rect x="317" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="321" y="25">)</text> + <path class="line" d="m17 22 h2 m40 0 h4 m40 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m24 0 h4 m0 0 h26 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m-146 -49 h20 m146 0 h20 m-186 0 q10 0 10 10 m166 0 q0 -10 10 -10 m-176 10 v57 m166 0 v-57 m-166 57 q0 10 10 10 m146 0 q10 0 10 -10 m-156 10 h4 m58 0 h4 m0 0 h80 m-156 -10 v20 m166 0 v-20 m-166 20 v8 m166 0 v-8 m-166 8 q0 10 10 10 m146 0 q10 0 10 -10 m-156 10 h4 m40 0 h4 m0 0 h98 m-156 -10 v20 m166 0 v-20 m-166 20 v8 m166 0 v-8 m-166 8 q0 10 10 10 m146 0 q10 0 10 -10 m-156 10 h4 m42 0 h4 m0 0 h96 m20 -133 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m-314 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m294 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-294 0 h10 m0 0 h284 m23 21 h-3"/> + <polygon points="363 22 371 18 371 26"/> + <polygon points="363 22 355 18 355 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#setoperationlistwithoutintialselect" title="SetOperationListWithoutIntialSelect" shape="rect">SetOperationListWithoutIntialSelect</a></div> + <div>         ::= ( ( 'UNION' ( 'ALL' | 'DISTINCT' )? | 'INTERSECT' | 'MINUS' | 'EXCEPT' + ) '(' <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a> ')' )+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WithList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="181" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">WITH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withitem" xlink:title="WithItem" shape="rect"> + <rect x="85" y="29" width="52" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="41">WithItem</text></a><rect x="85" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m34 0 h4 m20 0 h4 m52 0 h4 m-80 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m60 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-60 0 h4 m8 0 h4 m0 0 h44 m23 28 h-3"/> + <polygon points="171 38 179 34 179 42"/> + <polygon points="171 38 163 34 163 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#withlist" title="WithList" shape="rect">WithList</a> ::= 'WITH' <a href="#withitem" title="WithItem" shape="rect">WithItem</a> ( ',' <a href="#withitem" title="WithItem" shape="rect">WithItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#selectwithwithitems" title="selectwithwithitems">selectwithwithitems</a></li><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li><li><a href="#subselect" title="subselect">subselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WithItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="671" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">RECURSIVE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="131" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="135" y="13">RelObjectName</text></a><rect x="239" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="243" y="34">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitemslist" xlink:title="SelectItemsList" shape="rect"> + <rect x="259" y="22" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="263" y="34">SelectItemsList</text></a><rect x="345" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="349" y="34">)</text> + <rect x="385" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="389" y="13">AS</text> + <rect x="413" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="417" y="13">(</text> + <rect x="453" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="457" y="13">VALUES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="503" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="507" y="13">SimpleExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="453" y="29" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="457" y="41">SubSelect</text></a><rect x="635" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="639" y="13">)</text> + <path class="line" d="m17 10 h2 m20 0 h10 m0 0 h58 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v1 m88 0 v-1 m-88 1 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m20 -21 h4 m80 0 h4 m20 0 h10 m0 0 h116 m-146 0 h20 m126 0 h20 m-166 0 q10 0 10 10 m146 0 q0 -10 10 -10 m-156 10 v1 m146 0 v-1 m-146 1 q0 10 10 10 m126 0 q10 0 10 -10 m-136 10 h4 m12 0 h4 m0 0 h4 m78 0 h4 m0 0 h4 m12 0 h4 m20 -21 h4 m20 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m42 0 h4 m0 0 h4 m104 0 h4 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m54 0 h4 m0 0 h100 m20 -28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="661 10 669 6 669 14"/> + <polygon points="661 10 653 6 653 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#withitem" title="WithItem" shape="rect">WithItem</a> ::= 'RECURSIVE'? <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( '(' <a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a> ')' )? 'AS' '(' ( 'VALUES' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#withlist" title="withlist">withlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SelectItemsList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="145" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectitem" xlink:title="SelectItem" shape="rect"> + <rect x="43" y="29" width="58" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">SelectItem</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m58 0 h4 m-86 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m66 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-66 0 h4 m8 0 h4 m0 0 h50 m23 28 h-3"/> + <polygon points="135 38 143 34 143 42"/> + <polygon points="135 38 127 34 127 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#selectitemslist" title="SelectItemsList" shape="rect">SelectItemsList</a></div> + <div>         ::= <a href="#selectitem" title="SelectItem" shape="rect">SelectItem</a> ( ',' <a href="#selectitem" title="SelectItem" shape="rect">SelectItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#outputclause" title="outputclause">outputclause</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#update" title="update">update</a></li><li><a href="#withitem" title="withitem">withitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SelectExpressionItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="185" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="23" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Expression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="111" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m60 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="175 10 183 6 183 14"/> + <polygon points="175 10 167 6 167 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#selectexpressionitem" title="SelectExpressionItem" shape="rect">SelectExpressionItem</a></div> + <div>         ::= <a href="#expression" title="Expression" shape="rect">Expression</a> <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#listexpressionitem" title="listexpressionitem">listexpressionitem</a></li><li><a href="#selectitem" title="selectitem">selectitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SelectItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="195" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">*</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alltablecolumns" xlink:title="AllTableColumns" shape="rect"> + <rect x="43" y="29" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">AllTableColumns</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectexpressionitem" xlink:title="SelectExpressionItem" shape="rect"> + <rect x="43" y="57" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">SelectExpressionItem</text></a><path class="line" d="m17 10 h2 m20 0 h4 m14 0 h4 m0 0 h94 m-136 0 h20 m116 0 h20 m-156 0 q10 0 10 10 m136 0 q0 -10 10 -10 m-146 10 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m84 0 h4 m0 0 h24 m-126 -10 v20 m136 0 v-20 m-136 20 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m108 0 h4 m23 -56 h-3"/> + <polygon points="185 10 193 6 193 14"/> + <polygon points="185 10 177 6 177 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#selectitem" title="SelectItem" shape="rect">SelectItem</a></div> + <div>         ::= '*'</div> + <div>           | <a href="#alltablecolumns" title="AllTableColumns" shape="rect">AllTableColumns</a></div> + <div>           | <a href="#selectexpressionitem" title="SelectExpressionItem" shape="rect">SelectExpressionItem</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#selectitemslist" title="selectitemslist">selectitemslist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AllTableColumns +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="119" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="23" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Table</text></a><rect x="65" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="69" y="13">.</text> + <rect x="81" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="85" y="13">*</text> + <path class="line" d="m17 10 h2 m0 0 h4 m34 0 h4 m0 0 h4 m8 0 h4 m0 0 h4 m14 0 h4 m3 0 h-3"/> + <polygon points="109 10 117 6 117 14"/> + <polygon points="109 10 101 6 101 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alltablecolumns" title="AllTableColumns" shape="rect">AllTableColumns</a></div> + <div>         ::= <a href="#table" title="Table" shape="rect">Table</a> '.' '*'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#selectitem" title="selectitem">selectitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Alias +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="617" height="82"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="50" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutstart" xlink:title="RelObjectNameWithoutStart" shape="rect"> + <rect x="111" y="29" width="138" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="41">RelObjectNameWithoutStart</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="111" y="57" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="69">S_CHAR_LITERAL</text></a><rect x="297" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="301" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="337" y="29" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="341" y="41">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="445" y="50" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="449" y="62">ColDataType</text></a><rect x="337" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="341" y="13">,</text> + <rect x="561" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="565" y="41">)</text> + <path class="line" d="m17 38 h2 m20 0 h10 m0 0 h18 m-48 0 h20 m28 0 h20 m-68 0 q10 0 10 10 m48 0 q0 -10 10 -10 m-58 10 v1 m48 0 v-1 m-48 1 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m40 -21 h4 m138 0 h4 m-166 0 h20 m146 0 h20 m-186 0 q10 0 10 10 m166 0 q0 -10 10 -10 m-176 10 v8 m166 0 v-8 m-166 8 q0 10 10 10 m146 0 q10 0 10 -10 m-156 10 h4 m90 0 h4 m0 0 h48 m40 -28 h4 m12 0 h4 m20 0 h4 m80 0 h4 m20 0 h10 m0 0 h66 m-96 0 h20 m76 0 h20 m-116 0 q10 0 10 10 m96 0 q0 -10 10 -10 m-106 10 v1 m96 0 v-1 m-96 1 q0 10 10 10 m76 0 q10 0 10 -10 m-86 10 h4 m68 0 h4 m-204 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m204 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-204 0 h4 m8 0 h4 m0 0 h188 m20 28 h4 m12 0 h4 m-304 0 h20 m284 0 h20 m-324 0 q10 0 10 10 m304 0 q0 -10 10 -10 m-314 10 v22 m304 0 v-22 m-304 22 q0 10 10 10 m284 0 q10 0 10 -10 m-294 10 h10 m0 0 h274 m23 -42 h-3"/> + <polygon points="607 38 615 34 615 42"/> + <polygon points="607 38 599 34 599 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alias" title="Alias" shape="rect">Alias</a>    ::= 'AS'? ( <a href="#relobjectnamewithoutstart" title="RelObjectNameWithoutStart" shape="rect">RelObjectNameWithoutStart</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> ) ( '(' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a>? ( ',' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a>? )* ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#expressionlistitem" title="expressionlistitem">expressionlistitem</a></li><li><a href="#fromitem" title="fromitem">fromitem</a></li><li><a href="#functionitem" title="functionitem">functionitem</a></li><li><a href="#merge" title="merge">merge</a></li><li><a href="#pivot" title="pivot">pivot</a></li><li><a href="#pivotselectexpritem" title="pivotselectexpritem">pivotselectexpritem</a></li><li><a href="#selectexpressionitem" title="selectexpressionitem">selectexpressionitem</a></li><li><a href="#tablefunction" title="tablefunction">tablefunction</a></li><li><a href="#tablewithalias" title="tablewithalias">tablewithalias</a></li><li><a href="#unpivot" title="unpivot">unpivot</a></li><li><a href="#valueslist" title="valueslist">valueslist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SQLServerHint +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="251" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">INDEX</text> + <rect x="87" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="107" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="111" y="13">RelObjectName</text></a><rect x="195" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="13">)</text> + <rect x="43" y="29" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">NOLOCK</text> + <path class="line" d="m17 10 h2 m20 0 h4 m36 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m80 0 h4 m0 0 h4 m12 0 h4 m-192 0 h20 m172 0 h20 m-212 0 q10 0 10 10 m192 0 q0 -10 10 -10 m-202 10 v8 m192 0 v-8 m-192 8 q0 10 10 10 m172 0 q10 0 10 -10 m-182 10 h4 m48 0 h4 m0 0 h116 m23 -28 h-3"/> + <polygon points="241 10 249 6 249 14"/> + <polygon points="241 10 233 6 233 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sqlserverhint" title="SQLServerHint" shape="rect">SQLServerHint</a></div> + <div>         ::= 'INDEX' '(' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ')'</div> + <div>           | 'NOLOCK'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlserverhints" title="sqlserverhints">sqlserverhints</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SQLServerHints +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="243" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">WITH</text> + <rect x="65" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="69" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sqlserverhint" xlink:title="SQLServerHint" shape="rect"> + <rect x="105" y="29" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="109" y="41">SQLServerHint</text></a><rect x="105" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="109" y="13">,</text> + <rect x="207" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="211" y="41">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m34 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m74 0 h4 m-102 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m82 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-82 0 h4 m8 0 h4 m0 0 h66 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="233 38 241 34 241 42"/> + <polygon points="233 38 225 34 225 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sqlserverhints" title="SQLServerHints" shape="rect">SQLServerHints</a></div> + <div>         ::= 'WITH' '(' <a href="#sqlserverhint" title="SQLServerHint" shape="rect">SQLServerHint</a> ( ',' <a href="#sqlserverhint" title="SQLServerHint" shape="rect">SQLServerHint</a> )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MySQLIndexHint +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="445" height="133"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="29" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">USE</text> + <rect x="43" y="57" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">SHOW</text> + <rect x="43" y="85" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">IGNORE</text> + <rect x="43" y="113" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">FORCE</text> + <rect x="135" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="139" y="41">INDEX</text> + <rect x="135" y="57" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="139" y="69">KEY</text> + <rect x="199" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="203" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutvalue" xlink:title="RelObjectNameWithoutValue" shape="rect"> + <rect x="239" y="29" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="243" y="41">RelObjectNameWithoutValue</text></a><rect x="239" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="243" y="13">,</text> + <rect x="409" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="413" y="41">)</text> + <path class="line" d="m17 38 h2 m20 0 h4 m26 0 h4 m0 0 h18 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m40 0 h4 m0 0 h4 m-62 -10 v20 m72 0 v-20 m-72 20 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m-62 -10 v20 m72 0 v-20 m-72 20 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m38 0 h4 m0 0 h6 m40 -84 h4 m36 0 h4 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m24 0 h4 m0 0 h12 m20 -28 h4 m12 0 h4 m20 0 h4 m142 0 h4 m-170 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m150 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-150 0 h4 m8 0 h4 m0 0 h134 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="435 38 443 34 443 42"/> + <polygon points="435 38 427 34 427 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#mysqlindexhint" title="MySQLIndexHint" shape="rect">MySQLIndexHint</a></div> + <div>         ::= ( 'USE' | 'SHOW' | 'IGNORE' | 'FORCE' ) ( 'INDEX' | 'KEY' ) '(' <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a> ( ',' <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a> )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + FunctionItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="173" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="23" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Function</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="99" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="103" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m48 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="163 10 171 6 171 14"/> + <polygon points="163 10 155 6 155 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#functionitem" title="FunctionItem" shape="rect">FunctionItem</a></div> + <div>         ::= <a href="#function" title="Function" shape="rect">Function</a> <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivotfunctionitems" title="pivotfunctionitems">pivotfunctionitems</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotForColumns +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="213" height="77"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="83" y="29" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="41">Column</text></a><rect x="83" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">,</text> + <rect x="157" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="41">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="43" y="57" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">Column</text></a><path class="line" d="m17 38 h2 m20 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v8 m154 0 v-8 m-154 8 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h4 m46 0 h4 m0 0 h80 m23 -28 h-3"/> + <polygon points="203 38 211 34 211 42"/> + <polygon points="203 38 195 34 195 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotforcolumns" title="PivotForColumns" shape="rect">PivotForColumns</a></div> + <div>         ::= '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')'</div> + <div>           | <a href="#column" title="Column" shape="rect">Column</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivot" title="pivot">pivot</a></li><li><a href="#pivotxml" title="pivotxml">pivotxml</a></li><li><a href="#unpivot" title="unpivot">unpivot</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotFunctionItems +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="155" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#functionitem" xlink:title="FunctionItem" shape="rect"> + <rect x="43" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">FunctionItem</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m68 0 h4 m-96 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m76 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-76 0 h4 m8 0 h4 m0 0 h60 m23 28 h-3"/> + <polygon points="145 38 153 34 153 42"/> + <polygon points="145 38 137 34 137 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotfunctionitems" title="PivotFunctionItems" shape="rect">PivotFunctionItems</a></div> + <div>         ::= <a href="#functionitem" title="FunctionItem" shape="rect">FunctionItem</a> ( ',' <a href="#functionitem" title="FunctionItem" shape="rect">FunctionItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivot" title="pivot">pivot</a></li><li><a href="#pivotxml" title="pivotxml">pivotxml</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotSingleInItems +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="187" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotselectexpritem" xlink:title="PivotSelectExprItem" shape="rect"> + <rect x="43" y="29" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">PivotSelectExprItem</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m100 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m108 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-108 0 h4 m8 0 h4 m0 0 h92 m23 28 h-3"/> + <polygon points="177 38 185 34 185 42"/> + <polygon points="177 38 169 34 169 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotsingleinitems" title="PivotSingleInItems" shape="rect">PivotSingleInItems</a></div> + <div>         ::= <a href="#pivotselectexpritem" title="PivotSelectExprItem" shape="rect">PivotSelectExprItem</a> ( ',' <a href="#pivotselectexpritem" title="PivotSelectExprItem" shape="rect">PivotSelectExprItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivot" title="pivot">pivot</a></li><li><a href="#pivotxml" title="pivotxml">pivotxml</a></li><li><a href="#unpivot" title="unpivot">unpivot</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotSelectExprItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="215" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="23" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SimpleExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="141" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="145" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m90 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="205 10 213 6 213 14"/> + <polygon points="205 10 197 6 197 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotselectexpritem" title="PivotSelectExprItem" shape="rect">PivotSelectExprItem</a></div> + <div>         ::= <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivotsingleinitems" title="pivotsingleinitems">pivotsingleinitems</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExpressionListItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="269" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="43" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">SimpleExpressionList</text></a><rect x="155" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="159" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="195" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="199" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m0 0 h4 m104 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="259 10 267 6 267 14"/> + <polygon points="259 10 251 6 251 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#expressionlistitem" title="ExpressionListItem" shape="rect">ExpressionListItem</a></div> + <div>         ::= '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ')' <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivotmultiinitems" title="pivotmultiinitems">pivotmultiinitems</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotMultiInItems +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="181" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expressionlistitem" xlink:title="ExpressionListItem" shape="rect"> + <rect x="43" y="29" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">ExpressionListItem</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m94 0 h4 m-122 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m102 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-102 0 h4 m8 0 h4 m0 0 h86 m23 28 h-3"/> + <polygon points="171 38 179 34 179 42"/> + <polygon points="171 38 163 34 163 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotmultiinitems" title="PivotMultiInItems" shape="rect">PivotMultiInItems</a></div> + <div>         ::= <a href="#expressionlistitem" title="ExpressionListItem" shape="rect">ExpressionListItem</a> ( ',' <a href="#expressionlistitem" title="ExpressionListItem" shape="rect">ExpressionListItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#pivot" title="pivot">pivot</a></li><li><a href="#pivotxml" title="pivotxml">pivotxml</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Pivot +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="641" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">PIVOT</text> + <rect x="67" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotfunctionitems" xlink:title="PivotFunctionItems" shape="rect"> + <rect x="87" y="1" width="96" height="18" class="nonterminal"/> + <text class="nonterminal" x="91" y="13">PivotFunctionItems</text></a><rect x="191" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="13">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotforcolumns" xlink:title="PivotForColumns" shape="rect"> + <rect x="225" y="1" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="229" y="13">PivotForColumns</text></a><rect x="319" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="323" y="13">IN</text> + <rect x="345" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="349" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotsingleinitems" xlink:title="PivotSingleInItems" shape="rect"> + <rect x="385" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="389" y="13">PivotSingleInItems</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotmultiinitems" xlink:title="PivotMultiInItems" shape="rect"> + <rect x="385" y="29" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="389" y="41">PivotMultiInItems</text></a><rect x="507" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="511" y="13">)</text> + <rect x="527" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="567" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="571" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m96 0 h4 m0 0 h4 m26 0 h4 m0 0 h4 m86 0 h4 m0 0 h4 m18 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m94 0 h4 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m86 0 h4 m0 0 h8 m20 -28 h4 m12 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="631 10 639 6 639 14"/> + <polygon points="631 10 623 6 623 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivot" title="Pivot" shape="rect">Pivot</a>    ::= 'PIVOT' '(' <a href="#pivotfunctionitems" title="PivotFunctionItems" shape="rect">PivotFunctionItems</a> 'FOR' <a href="#pivotforcolumns" title="PivotForColumns" shape="rect">PivotForColumns</a> 'IN' '(' ( <a href="#pivotsingleinitems" title="PivotSingleInItems" shape="rect">PivotSingleInItems</a> | <a href="#pivotmultiinitems" title="PivotMultiInItems" shape="rect">PivotMultiInItems</a> ) ')' ')' <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PivotXml +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="599" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">PIVOT</text> + <rect x="67" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="13">XML</text> + <rect x="103" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotfunctionitems" xlink:title="PivotFunctionItems" shape="rect"> + <rect x="123" y="1" width="96" height="18" class="nonterminal"/> + <text class="nonterminal" x="127" y="13">PivotFunctionItems</text></a><rect x="227" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="231" y="13">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotforcolumns" xlink:title="PivotForColumns" shape="rect"> + <rect x="261" y="1" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="265" y="13">PivotForColumns</text></a><rect x="355" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="359" y="13">IN</text> + <rect x="381" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="385" y="13">(</text> + <rect x="421" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="425" y="13">ANY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="421" y="29" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="41">SelectBody</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotsingleinitems" xlink:title="PivotSingleInItems" shape="rect"> + <rect x="421" y="57" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="69">PivotSingleInItems</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotmultiinitems" xlink:title="PivotMultiInItems" shape="rect"> + <rect x="421" y="85" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="97">PivotMultiInItems</text></a><rect x="543" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="547" y="13">)</text> + <rect x="563" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="567" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m96 0 h4 m0 0 h4 m26 0 h4 m0 0 h4 m86 0 h4 m0 0 h4 m18 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m26 0 h4 m0 0 h68 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m60 0 h4 m0 0 h34 m-112 -10 v20 m122 0 v-20 m-122 20 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m94 0 h4 m-112 -10 v20 m122 0 v-20 m-122 20 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m86 0 h4 m0 0 h8 m20 -84 h4 m12 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="589 10 597 6 597 14"/> + <polygon points="589 10 581 6 581 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pivotxml" title="PivotXml" shape="rect">PivotXml</a> ::= 'PIVOT' 'XML' '(' <a href="#pivotfunctionitems" title="PivotFunctionItems" shape="rect">PivotFunctionItems</a> 'FOR' <a href="#pivotforcolumns" title="PivotForColumns" shape="rect">PivotForColumns</a> 'IN' '(' ( 'ANY' | <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a> | <a href="#pivotsingleinitems" title="PivotSingleInItems" shape="rect">PivotSingleInItems</a> | <a href="#pivotmultiinitems" title="PivotMultiInItems" shape="rect">PivotMultiInItems</a> ) ')' ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + UnPivot +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="787" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">UNPIVOT</text> + <rect x="121" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="34">INCLUDE</text> + <rect x="121" y="50" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="62">EXCLUDE</text> + <rect x="197" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="34">NULLS</text> + <rect x="263" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="267" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotforcolumns" xlink:title="PivotForColumns" shape="rect"> + <rect x="283" y="1" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="287" y="13">PivotForColumns</text></a><rect x="377" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="381" y="13">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotforcolumns" xlink:title="PivotForColumns" shape="rect"> + <rect x="411" y="1" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="415" y="13">PivotForColumns</text></a><rect x="505" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="509" y="13">IN</text> + <rect x="531" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="535" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotsingleinitems" xlink:title="PivotSingleInItems" shape="rect"> + <rect x="551" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="555" y="13">PivotSingleInItems</text></a><rect x="653" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="657" y="13">)</text> + <rect x="673" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="677" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="713" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="717" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m50 0 h4 m20 0 h10 m0 0 h132 m-162 0 h20 m142 0 h20 m-182 0 q10 0 10 10 m162 0 q0 -10 10 -10 m-172 10 v1 m162 0 v-1 m-162 1 q0 10 10 10 m142 0 q10 0 10 -10 m-132 10 h4 m48 0 h4 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -28 h4 m38 0 h4 m20 -21 h4 m12 0 h4 m0 0 h4 m86 0 h4 m0 0 h4 m26 0 h4 m0 0 h4 m86 0 h4 m0 0 h4 m18 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m94 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="777 10 785 6 785 14"/> + <polygon points="777 10 769 6 769 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#unpivot" title="UnPivot" shape="rect">UnPivot</a>  ::= 'UNPIVOT' ( ( 'INCLUDE' | 'EXCLUDE' ) 'NULLS' )? '(' <a href="#pivotforcolumns" title="PivotForColumns" shape="rect">PivotForColumns</a> 'FOR' <a href="#pivotforcolumns" title="PivotForColumns" shape="rect">PivotForColumns</a> 'IN' '(' <a href="#pivotsingleinitems" title="PivotSingleInItems" shape="rect">PivotSingleInItems</a> ')' ')' <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IntoClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="161" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">INTO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="83" y="29" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="41">Table</text></a><rect x="83" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m32 0 h4 m20 0 h4 m34 0 h4 m-62 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m42 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-42 0 h4 m8 0 h4 m0 0 h26 m23 28 h-3"/> + <polygon points="151 38 159 34 159 42"/> + <polygon points="151 38 143 34 143 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#intoclause" title="IntoClause" shape="rect">IntoClause</a></div> + <div>         ::= 'INTO' <a href="#table" title="Table" shape="rect">Table</a> ( ',' <a href="#table" title="Table" shape="rect">Table</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + FromItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="1059" height="182"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#valueslist" xlink:title="ValuesList" shape="rect"> + <rect x="43" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">ValuesList</text></a><rect x="63" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fromitem" xlink:title="FromItem" shape="rect"> + <rect x="103" y="29" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="41">FromItem</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subjoin" xlink:title="SubJoin" shape="rect"> + <rect x="185" y="50" width="44" height="18" class="nonterminal"/> + <text class="nonterminal" x="189" y="62">SubJoin</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="103" y="78" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="90">SubSelect</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#setoperationlistwithoutintialselect" xlink:title="SetOperationListWithoutIntialSelect" shape="rect"> + <rect x="297" y="50" width="168" height="18" class="nonterminal"/> + <text class="nonterminal" x="301" y="62">SetOperationListWithoutIntialSelect</text></a><rect x="493" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="497" y="41">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#unpivot" xlink:title="UnPivot" shape="rect"> + <rect x="533" y="50" width="44" height="18" class="nonterminal"/> + <text class="nonterminal" x="537" y="62">UnPivot</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#tablefunction" xlink:title="TableFunction" shape="rect"> + <rect x="63" y="106" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="118">TableFunction</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="63" y="134" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="146">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#lateralsubselect" xlink:title="LateralSubSelect" shape="rect"> + <rect x="63" y="162" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="174">LateralSubSelect</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="645" y="50" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="649" y="62">Alias</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#unpivot" xlink:title="UnPivot" shape="rect"> + <rect x="723" y="50" width="44" height="18" class="nonterminal"/> + <text class="nonterminal" x="727" y="62">UnPivot</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivotxml" xlink:title="PivotXml" shape="rect"> + <rect x="815" y="50" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="819" y="62">PivotXml</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pivot" xlink:title="Pivot" shape="rect"> + <rect x="815" y="78" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="819" y="90">Pivot</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mysqlindexhint" xlink:title="MySQLIndexHint" shape="rect"> + <rect x="911" y="50" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="915" y="62">MySQLIndexHint</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sqlserverhints" xlink:title="SQLServerHints" shape="rect"> + <rect x="911" y="78" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="915" y="90">SQLServerHints</text></a><path class="line" d="m17 10 h2 m20 0 h4 m54 0 h4 m0 0 h918 m-1000 0 h20 m980 0 h20 m-1020 0 q10 0 10 10 m1000 0 q0 -10 10 -10 m-1010 10 v8 m1000 0 v-8 m-1000 8 q0 10 10 10 m980 0 q10 0 10 -10 m-970 10 h4 m12 0 h4 m20 0 h4 m54 0 h4 m20 0 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m-154 -21 h20 m154 0 h20 m-194 0 q10 0 10 10 m174 0 q0 -10 10 -10 m-184 10 v29 m174 0 v-29 m-174 29 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m54 0 h4 m0 0 h92 m40 -49 h10 m0 0 h166 m-196 0 h20 m176 0 h20 m-216 0 q10 0 10 10 m196 0 q0 -10 10 -10 m-206 10 v1 m196 0 v-1 m-196 1 q0 10 10 10 m176 0 q10 0 10 -10 m-186 10 h4 m168 0 h4 m20 -21 h4 m12 0 h4 m20 0 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m-542 -21 h20 m542 0 h20 m-582 0 q10 0 10 10 m562 0 q0 -10 10 -10 m-572 10 v57 m562 0 v-57 m-562 57 q0 10 10 10 m542 0 q10 0 10 -10 m-552 10 h4 m72 0 h4 m0 0 h462 m-552 -10 v20 m562 0 v-20 m-562 20 v8 m562 0 v-8 m-562 8 q0 10 10 10 m542 0 q10 0 10 -10 m-552 10 h4 m34 0 h4 m0 0 h500 m-552 -10 v20 m562 0 v-20 m-562 20 v8 m562 0 v-8 m-562 8 q0 10 10 10 m542 0 q10 0 10 -10 m-552 10 h4 m84 0 h4 m0 0 h450 m40 -133 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m40 -21 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m40 -21 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m-66 -10 v20 m76 0 v-20 m-76 20 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m30 0 h4 m0 0 h18 m40 -49 h10 m0 0 h82 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v1 m112 0 v-1 m-112 1 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m84 0 h4 m-102 -10 v20 m112 0 v-20 m-112 20 v8 m112 0 v-8 m-112 8 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m80 0 h4 m0 0 h4 m43 -77 h-3"/> + <polygon points="1049 10 1057 6 1057 14"/> + <polygon points="1049 10 1041 6 1041 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#fromitem" title="FromItem" shape="rect">FromItem</a> ::= <a href="#valueslist" title="ValuesList" shape="rect">ValuesList</a></div> + <div>           | ( '(' ( <a href="#fromitem" title="FromItem" shape="rect">FromItem</a> <a href="#subjoin" title="SubJoin" shape="rect">SubJoin</a>? | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) <a href="#setoperationlistwithoutintialselect" title="SetOperationListWithoutIntialSelect" shape="rect">SetOperationListWithoutIntialSelect</a>? ')' <a href="#unpivot" title="UnPivot" shape="rect">UnPivot</a>? | <a href="#tablefunction" title="TableFunction" shape="rect">TableFunction</a> | <a href="#table" title="Table" shape="rect">Table</a> | <a href="#lateralsubselect" title="LateralSubSelect" shape="rect">LateralSubSelect</a> ) <a href="#alias" title="Alias" shape="rect">Alias</a>? <a href="#unpivot" title="UnPivot" shape="rect">UnPivot</a>? ( <a href="#pivotxml" title="PivotXml" shape="rect">PivotXml</a> | <a href="#pivot" title="Pivot" shape="rect">Pivot</a> )? ( <a href="#mysqlindexhint" title="MySQLIndexHint" shape="rect">MySQLIndexHint</a> | <a href="#sqlserverhints" title="SQLServerHints" shape="rect">SQLServerHints</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li><li><a href="#joinerexpression" title="joinerexpression">joinerexpression</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ValuesList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="673" height="133"> + <polygon points="9 66 1 62 1 70"/> + <polygon points="17 66 9 62 9 70"/> + <rect x="23" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="69">(</text> + <rect x="43" y="57" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">VALUES</text> + <rect x="133" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="137" y="69">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="173" y="57" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="177" y="69">SimpleExpression</text></a><rect x="173" y="29" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="41">,</text> + <rect x="291" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="295" y="69">)</text> + <rect x="133" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="137" y="13">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="133" y="113" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="137" y="125">SimpleExpression</text></a><rect x="133" y="85" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="137" y="97">,</text> + <rect x="351" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="355" y="69">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="391" y="57" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="395" y="69">Alias</text></a><rect x="449" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="453" y="69">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="489" y="57" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="493" y="69">RelObjectName</text></a><rect x="489" y="29" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="493" y="41">,</text> + <rect x="597" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="601" y="69">)</text> + <path class="line" d="m17 66 h2 m0 0 h4 m12 0 h4 m0 0 h4 m42 0 h4 m40 0 h4 m12 0 h4 m20 0 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m20 28 h4 m12 0 h4 m-198 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -36 q0 -10 10 -10 m178 56 l20 0 m-20 0 q10 0 10 -10 l0 -36 q0 -10 -10 -10 m-178 0 h4 m8 0 h4 m0 0 h162 m-218 56 h20 m218 0 h20 m-258 0 q10 0 10 10 m238 0 q0 -10 10 -10 m-248 10 v36 m238 0 v-36 m-238 36 q0 10 10 10 m218 0 q10 0 10 -10 m-208 10 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m20 28 h80 m20 -56 h4 m12 0 h4 m20 0 h4 m30 0 h4 m20 0 h4 m12 0 h4 m20 0 h4 m80 0 h4 m-108 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m88 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-88 0 h4 m8 0 h4 m0 0 h72 m20 28 h4 m12 0 h4 m-188 0 h20 m168 0 h20 m-208 0 q10 0 10 10 m188 0 q0 -10 10 -10 m-198 10 v1 m188 0 v-1 m-188 1 q0 10 10 10 m168 0 q10 0 10 -10 m-178 10 h10 m0 0 h158 m-246 -21 h20 m246 0 h20 m-286 0 q10 0 10 10 m266 0 q0 -10 10 -10 m-276 10 v13 m266 0 v-13 m-266 13 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h10 m0 0 h236 m23 -33 h-3"/> + <polygon points="663 66 671 62 671 70"/> + <polygon points="663 66 655 62 655 70"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#valueslist" title="ValuesList" shape="rect">ValuesList</a></div> + <div>         ::= '(' 'VALUES' ( '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ')' ( ',' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ')' )* | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )* ) ')' ( <a href="#alias" title="Alias" shape="rect">Alias</a> ( '(' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( ',' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )* ')' )? )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + LateralSubSelect +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="195" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">LATERAL</text> + <rect x="77" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="81" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="97" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="101" y="13">SubSelect</text></a><rect x="159" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="163" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m46 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="185 10 193 6 193 14"/> + <polygon points="185 10 177 6 177 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#lateralsubselect" title="LateralSubSelect" shape="rect">LateralSubSelect</a></div> + <div>         ::= 'LATERAL' '(' <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SubJoin +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="111" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subjoinslist" xlink:title="SubJoinsList" shape="rect"> + <rect x="23" y="1" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SubJoinsList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m64 0 h4 m3 0 h-3"/> + <polygon points="101 10 109 6 109 14"/> + <polygon points="101 10 93 6 93 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#subjoin" title="SubJoin" shape="rect">SubJoin</a>  ::= <a href="#subjoinslist" title="SubJoinsList" shape="rect">SubJoinsList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JoinsList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="171" height="37"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinerexpression" xlink:title="JoinerExpression" shape="rect"> + <rect x="43" y="1" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">JoinerExpression</text></a><path class="line" d="m17 31 h2 m20 0 h10 m0 0 h82 m-112 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m92 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-92 0 h4 m84 0 h4 m23 21 h-3"/> + <polygon points="161 31 169 27 169 35"/> + <polygon points="161 31 153 27 153 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#joinslist" title="JoinsList" shape="rect">JoinsList</a></div> + <div>         ::= <a href="#joinerexpression" title="JoinerExpression" shape="rect">JoinerExpression</a>*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SubJoinsList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="171" height="33"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinerexpression" xlink:title="JoinerExpression" shape="rect"> + <rect x="43" y="13" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="25">JoinerExpression</text></a><path class="line" d="m17 22 h2 m20 0 h4 m84 0 h4 m-112 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m92 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-92 0 h10 m0 0 h82 m23 21 h-3"/> + <polygon points="161 22 169 18 169 26"/> + <polygon points="161 22 153 18 153 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#subjoinslist" title="SubJoinsList" shape="rect">SubJoinsList</a></div> + <div>         ::= <a href="#joinerexpression" title="JoinerExpression" shape="rect">JoinerExpression</a>+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#subjoin" title="subjoin">subjoin</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JoinerExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="641" height="346"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">GLOBAL</text> + <rect x="135" y="22" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="139" y="34">NATURAL</text> + <rect x="253" y="22" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="257" y="34">RIGHT</text> + <rect x="253" y="50" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="257" y="62">FULL</text> + <rect x="337" y="22" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="341" y="34">OUTER</text> + <rect x="233" y="78" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="237" y="90">LEFT</text> + <rect x="289" y="99" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="293" y="111">SEMI</text> + <rect x="289" y="127" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="293" y="139">OUTER</text> + <rect x="233" y="155" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="237" y="167">INNER</text> + <rect x="233" y="183" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="237" y="195">CROSS</text> + <rect x="445" y="1" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="449" y="13">JOIN</text> + <rect x="445" y="29" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="449" y="41">,</text> + <rect x="481" y="50" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="485" y="62">OUTER</text> + <rect x="445" y="78" width="82" height="18" class="terminal" rx="4"/> + <text class="terminal" x="449" y="90">STRAIGHT_JOIN</text> + <rect x="445" y="106" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="449" y="118">APPLY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fromitem" xlink:title="FromItem" shape="rect"> + <rect x="569" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="573" y="13">FromItem</text></a><rect x="283" y="258" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="287" y="270">WITHIN</text> + <rect x="335" y="258" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="270">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#joinwindow" xlink:title="JoinWindow" shape="rect"> + <rect x="355" y="258" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="359" y="270">JoinWindow</text></a><rect x="427" y="258" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="431" y="270">)</text> + <rect x="487" y="237" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="491" y="249">ON</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="517" y="237" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="521" y="249">Expression</text></a><rect x="263" y="314" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="267" y="326">USING</text> + <rect x="309" y="314" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="313" y="326">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="349" y="314" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="353" y="326">Column</text></a><rect x="349" y="286" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="353" y="298">,</text> + <rect x="423" y="314" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="326">)</text> + <path class="line" d="m17 10 h2 m20 0 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m40 -21 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m60 -21 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m30 0 h4 m0 0 h6 m40 -49 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m-172 -21 h20 m172 0 h20 m-212 0 q10 0 10 10 m192 0 q0 -10 10 -10 m-202 10 v57 m192 0 v-57 m-192 57 q0 10 10 10 m172 0 q10 0 10 -10 m-182 10 h4 m28 0 h4 m20 0 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m30 0 h4 m0 0 h10 m-58 -10 v20 m68 0 v-20 m-68 20 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m20 -49 h48 m-182 -10 v20 m192 0 v-20 m-192 20 v57 m192 0 v-57 m-192 57 q0 10 10 10 m172 0 q10 0 10 -10 m-182 10 h4 m36 0 h4 m0 0 h128 m-182 -10 v20 m192 0 v-20 m-192 20 v8 m192 0 v-8 m-192 8 q0 10 10 10 m172 0 q10 0 10 -10 m-182 10 h4 m40 0 h4 m0 0 h124 m40 -182 h4 m30 0 h4 m0 0 h66 m-124 0 h20 m104 0 h20 m-144 0 q10 0 10 10 m124 0 q0 -10 10 -10 m-134 10 v8 m124 0 v-8 m-124 8 q0 10 10 10 m104 0 q10 0 10 -10 m-114 10 h4 m8 0 h4 m20 0 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m-94 -31 v20 m124 0 v-20 m-124 20 v29 m124 0 v-29 m-124 29 q0 10 10 10 m104 0 q10 0 10 -10 m-114 10 h4 m82 0 h4 m0 0 h14 m-114 -10 v20 m124 0 v-20 m-124 20 v8 m124 0 v-8 m-124 8 q0 10 10 10 m104 0 q10 0 10 -10 m-114 10 h4 m36 0 h4 m0 0 h60 m20 -105 h4 m54 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-412 236 l2 0 m2 0 l2 0 m2 0 l2 0 m42 0 h10 m0 0 h154 m-184 0 h20 m164 0 h20 m-204 0 q10 0 10 10 m184 0 q0 -10 10 -10 m-194 10 v1 m184 0 v-1 m-184 1 q0 10 10 10 m164 0 q10 0 10 -10 m-174 10 h4 m44 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m64 0 h4 m0 0 h4 m12 0 h4 m40 -21 h4 m22 0 h4 m0 0 h4 m60 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h10 m0 0 h88 m-342 21 h20 m342 0 h20 m-382 0 q10 0 10 10 m362 0 q0 -10 10 -10 m-372 10 v57 m362 0 v-57 m-362 57 q0 10 10 10 m342 0 q10 0 10 -10 m-352 10 h4 m38 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m0 0 h162 m-352 -10 v20 m362 0 v-20 m-362 20 v1 m362 0 v-1 m-362 1 q0 10 10 10 m342 0 q10 0 10 -10 m-352 10 h10 m0 0 h332 m23 -98 h-3"/> + <polygon points="631 246 639 242 639 250"/> + <polygon points="631 246 623 242 623 250"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#joinerexpression" title="JoinerExpression" shape="rect">JoinerExpression</a></div> + <div>         ::= 'GLOBAL'? 'NATURAL'? ( ( 'RIGHT' | 'FULL' )? 'OUTER'? | 'LEFT' ( 'SEMI' + | 'OUTER' )? | 'INNER' | 'CROSS' ) ( 'JOIN' | ',' 'OUTER'? | 'STRAIGHT_JOIN' | 'APPLY' + ) <a href="#fromitem" title="FromItem" shape="rect">FromItem</a> ( ( 'WITHIN' '(' <a href="#joinwindow" title="JoinWindow" shape="rect">JoinWindow</a> ')' )? ( 'ON' <a href="#expression" title="Expression" shape="rect">Expression</a> )+ | 'USING' '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#joinslist" title="joinslist">joinslist</a></li><li><a href="#subjoinslist" title="subjoinslist">subjoinslist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JoinWindow +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="479" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="23" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="99" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="103" y="13">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="99" y="29" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="103" y="41">K_DATE_LITERAL</text></a><rect x="235" y="22" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="239" y="34">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="251" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="255" y="34">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="327" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="327" y="50" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="62">K_DATE_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m48 0 h4 m20 0 h4 m74 0 h4 m0 0 h14 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v8 m116 0 v-8 m-116 8 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m88 0 h4 m40 -28 h10 m0 0 h198 m-228 0 h20 m208 0 h20 m-248 0 q10 0 10 10 m228 0 q0 -10 10 -10 m-238 10 v1 m228 0 v-1 m-228 1 q0 10 10 10 m208 0 q10 0 10 -10 m-218 10 h4 m8 0 h4 m0 0 h4 m48 0 h4 m20 0 h4 m74 0 h4 m0 0 h14 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v8 m116 0 v-8 m-116 8 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m88 0 h4 m43 -49 h-3"/> + <polygon points="469 10 477 6 477 14"/> + <polygon points="469 10 461 6 461 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#joinwindow" title="JoinWindow" shape="rect">JoinWindow</a></div> + <div>         ::= <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a> ) ( ',' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a> ) )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#joinerexpression" title="joinerexpression">joinerexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + KSQLWindowClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="659" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">WINDOW</text> + <rect x="107" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="13">HOPPING</text> + <rect x="167" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="171" y="13">(</text> + <rect x="187" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="191" y="13">SIZE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="223" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="227" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="279" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="13">S_IDENTIFIER</text></a><rect x="361" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="13">,</text> + <rect x="377" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="381" y="13">ADVANCE</text> + <rect x="437" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="441" y="13">BY</text> + <rect x="107" y="29" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="41">SESSION</text> + <rect x="165" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="41">(</text> + <rect x="107" y="57" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="69">TUMBLING</text> + <rect x="171" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="175" y="69">(</text> + <rect x="191" y="57" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="69">SIZE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="485" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="489" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="541" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="545" y="13">S_IDENTIFIER</text></a><rect x="623" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="627" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m56 0 h4 m20 0 h4 m52 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m74 0 h4 m0 0 h4 m8 0 h4 m0 0 h4 m52 0 h4 m0 0 h4 m20 0 h4 m-378 0 h20 m358 0 h20 m-398 0 q10 0 10 10 m378 0 q0 -10 10 -10 m-388 10 v8 m378 0 v-8 m-378 8 q0 10 10 10 m358 0 q10 0 10 -10 m-368 10 h4 m50 0 h4 m0 0 h4 m12 0 h4 m0 0 h280 m-368 -10 v20 m378 0 v-20 m-378 20 v8 m378 0 v-8 m-378 8 q0 10 10 10 m358 0 q10 0 10 -10 m-368 10 h4 m56 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m28 0 h4 m0 0 h238 m20 -56 h4 m48 0 h4 m0 0 h4 m74 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="649 10 657 6 657 14"/> + <polygon points="649 10 641 6 641 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#ksqlwindowclause" title="KSQLWindowClause" shape="rect">KSQLWindowClause</a></div> + <div>         ::= 'WINDOW' ( 'HOPPING' '(' 'SIZE' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ',' 'ADVANCE' 'BY' | 'SESSION' '(' | 'TUMBLING' '(' 'SIZE' ) <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WhereClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="157" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="73" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="77" y="13">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m0 0 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="147 10 155 6 155 14"/> + <polygon points="147 10 139 6 139 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#whereclause" title="WhereClause" shape="rect">WhereClause</a></div> + <div>         ::= 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#insertconflicttarget" title="insertconflicttarget">insertconflicttarget</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OracleHierarchicalQueryClause +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="563" height="91"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">START</text> + <rect x="87" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="13">WITH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#andexpression" xlink:title="AndExpression" shape="rect"> + <rect x="129" y="1" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="133" y="13">AndExpression</text></a><rect x="215" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="13">CONNECT</text> + <rect x="275" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="279" y="13">BY</text> + <rect x="323" y="22" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="327" y="34">NOCYCLE</text> + <rect x="43" y="50" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">CONNECT</text> + <rect x="103" y="50" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="62">BY</text> + <rect x="151" y="71" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="155" y="83">NOCYCLE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#andexpression" xlink:title="AndExpression" shape="rect"> + <rect x="249" y="71" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="253" y="83">AndExpression</text></a><rect x="335" y="71" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="83">START</text> + <rect x="379" y="71" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="383" y="83">WITH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#andexpression" xlink:title="AndExpression" shape="rect"> + <rect x="461" y="1" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="465" y="13">AndExpression</text></a><path class="line" d="m17 10 h2 m20 0 h4 m36 0 h4 m0 0 h4 m34 0 h4 m0 0 h4 m78 0 h4 m0 0 h4 m52 0 h4 m0 0 h4 m20 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -21 h40 m-418 0 h20 m398 0 h20 m-438 0 q10 0 10 10 m418 0 q0 -10 10 -10 m-428 10 v29 m418 0 v-29 m-418 29 q0 10 10 10 m398 0 q10 0 10 -10 m-408 10 h4 m52 0 h4 m0 0 h4 m20 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m40 -21 h10 m0 0 h162 m-192 0 h20 m172 0 h20 m-212 0 q10 0 10 10 m192 0 q0 -10 10 -10 m-202 10 v1 m192 0 v-1 m-192 1 q0 10 10 10 m172 0 q10 0 10 -10 m-182 10 h4 m78 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m34 0 h4 m40 -70 h4 m78 0 h4 m3 0 h-3"/> + <polygon points="553 10 561 6 561 14"/> + <polygon points="553 10 545 6 545 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#oraclehierarchicalqueryclause" title="OracleHierarchicalQueryClause" shape="rect">OracleHierarchicalQueryClause</a></div> + <div>         ::= ( 'START' 'WITH' <a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a> 'CONNECT' 'BY' 'NOCYCLE'? | 'CONNECT' 'BY' 'NOCYCLE'? ( <a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a> 'START' 'WITH' )? ) <a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + GroupByColumnReferences +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="775" height="217"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">GROUP</text> + <rect x="73" y="29" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="77" y="41">BY</text> + <rect x="141" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="41">(</text> + <rect x="161" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="41">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="141" y="57" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="145" y="69">ComplexExpressionList</text></a><rect x="303" y="29" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="307" y="41">GROUPING</text> + <rect x="369" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="373" y="41">SETS</text> + <rect x="407" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="411" y="41">(</text> + <rect x="467" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="471" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="507" y="50" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="511" y="62">SimpleExpressionList</text></a><rect x="639" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="643" y="41">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="467" y="78" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="471" y="90">SimpleExpression</text></a><rect x="447" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="451" y="13">,</text> + <rect x="699" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="703" y="41">)</text> + <rect x="121" y="148" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="160">GROUPING</text> + <rect x="187" y="148" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="191" y="160">SETS</text> + <rect x="225" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="229" y="160">(</text> + <rect x="285" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="289" y="160">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="325" y="169" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="329" y="181">SimpleExpressionList</text></a><rect x="457" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="461" y="160">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="285" y="197" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="289" y="209">SimpleExpression</text></a><rect x="265" y="120" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="269" y="132">,</text> + <rect x="517" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="521" y="160">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m42 0 h4 m0 0 h4 m20 0 h4 m40 0 h4 m12 0 h4 m0 0 h4 m12 0 h4 m0 0 h82 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v8 m142 0 v-8 m-142 8 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m114 0 h4 m40 -28 h4 m58 0 h4 m0 0 h4 m30 0 h4 m0 0 h4 m12 0 h4 m40 0 h4 m12 0 h4 m20 0 h10 m0 0 h102 m-132 0 h20 m112 0 h20 m-152 0 q10 0 10 10 m132 0 q0 -10 10 -10 m-142 10 v1 m132 0 v-1 m-132 1 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m104 0 h4 m20 -21 h4 m12 0 h4 m-212 0 h20 m192 0 h20 m-232 0 q10 0 10 10 m212 0 q0 -10 10 -10 m-222 10 v29 m212 0 v-29 m-212 29 q0 10 10 10 m192 0 q10 0 10 -10 m-202 10 h4 m90 0 h4 m0 0 h94 m-232 -49 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m232 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-232 0 h4 m8 0 h4 m0 0 h216 m20 28 h4 m12 0 h4 m-436 0 h20 m416 0 h20 m-456 0 q10 0 10 10 m436 0 q0 -10 10 -10 m-446 10 v50 m436 0 v-50 m-436 50 q0 10 10 10 m416 0 q10 0 10 -10 m-426 10 h10 m0 0 h406 m-618 -70 h20 m618 0 h20 m-658 0 q10 0 10 10 m638 0 q0 -10 10 -10 m-648 10 v99 m638 0 v-99 m-638 99 q0 10 10 10 m618 0 q10 0 10 -10 m-628 10 h4 m58 0 h4 m0 0 h4 m30 0 h4 m0 0 h4 m12 0 h4 m40 0 h4 m12 0 h4 m20 0 h10 m0 0 h102 m-132 0 h20 m112 0 h20 m-152 0 q10 0 10 10 m132 0 q0 -10 10 -10 m-142 10 v1 m132 0 v-1 m-132 1 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m104 0 h4 m20 -21 h4 m12 0 h4 m-212 0 h20 m192 0 h20 m-232 0 q10 0 10 10 m212 0 q0 -10 10 -10 m-222 10 v29 m212 0 v-29 m-212 29 q0 10 10 10 m192 0 q10 0 10 -10 m-202 10 h4 m90 0 h4 m0 0 h94 m-232 -49 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m232 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-232 0 h4 m8 0 h4 m0 0 h216 m20 28 h4 m12 0 h4 m0 0 h202 m23 -119 h-3"/> + <polygon points="765 38 773 34 773 42"/> + <polygon points="765 38 757 34 757 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#groupbycolumnreferences" title="GroupByColumnReferences" shape="rect">GroupByColumnReferences</a></div> + <div>         ::= 'GROUP' 'BY' ( ( '(' ')' | <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ) ( 'GROUPING' 'SETS' '(' ( '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a>? ')' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ) ( ',' ( '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a>? ')' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ) )* ')' )? | 'GROUPING' 'SETS' '(' ( '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a>? ')' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ) ( ',' ( '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a>? ')' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ) )* ')' )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Having +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="159" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">HAVING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="75" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="79" y="13">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m44 0 h4 m0 0 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="149 10 157 6 157 14"/> + <polygon points="149 10 141 6 141 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#having" title="Having" shape="rect">Having</a>   ::= 'HAVING' <a href="#expression" title="Expression" shape="rect">Expression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OrderByElements +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="347" height="70"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">ORDER</text> + <rect x="91" y="50" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="62">SIBLINGS</text> + <rect x="171" y="29" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="175" y="41">BY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelement" xlink:title="OrderByElement" shape="rect"> + <rect x="219" y="29" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="223" y="41">OrderByElement</text></a><rect x="219" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="223" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m40 0 h4 m20 0 h10 m0 0 h50 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v1 m80 0 v-1 m-80 1 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -21 h4 m20 0 h4 m20 0 h4 m84 0 h4 m-112 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m92 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-92 0 h4 m8 0 h4 m0 0 h76 m23 28 h-3"/> + <polygon points="337 38 345 34 345 42"/> + <polygon points="337 38 329 34 329 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a></div> + <div>         ::= 'ORDER' 'SIBLINGS'? 'BY' <a href="#orderbyelement" title="OrderByElement" shape="rect">OrderByElement</a> ( ',' <a href="#orderbyelement" title="OrderByElement" shape="rect">OrderByElement</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#keepexpression" title="keepexpression">keepexpression</a></li><li><a href="#mysqlgroupconcat" title="mysqlgroupconcat">mysqlgroupconcat</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li><li><a href="#update" title="update">update</a></li><li><a href="#xmlserializeexpr" title="xmlserializeexpr">xmlserializeexpr</a></li><li><a href="#windowdefinition" title="windowdefinition">windowdefinition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OrderByElement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="355" height="91"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="23" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Expression</text></a><rect x="111" y="22" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="115" y="34">ASC</text> + <rect x="111" y="50" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="115" y="62">DESC</text> + <rect x="191" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="34">NULLS</text> + <rect x="257" y="43" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="55">FIRST</text> + <rect x="257" y="71" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="83">LAST</text> + <path class="line" d="m17 10 h2 m0 0 h4 m60 0 h4 m20 0 h10 m0 0 h30 m-60 0 h20 m40 0 h20 m-80 0 q10 0 10 10 m60 0 q0 -10 10 -10 m-70 10 v1 m60 0 v-1 m-60 1 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m26 0 h4 m0 0 h6 m-50 -10 v20 m60 0 v-20 m-60 20 v8 m60 0 v-8 m-60 8 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m32 0 h4 m40 -49 h10 m0 0 h118 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v1 m148 0 v-1 m-148 1 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m38 0 h4 m20 0 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m-52 -10 v20 m62 0 v-20 m-62 20 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m30 0 h4 m0 0 h4 m43 -70 h-3"/> + <polygon points="345 10 353 6 353 14"/> + <polygon points="345 10 337 6 337 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#orderbyelement" title="OrderByElement" shape="rect">OrderByElement</a></div> + <div>         ::= <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'ASC' | 'DESC' )? ( 'NULLS' ( 'FIRST' | 'LAST' )? )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#orderbyelements" title="orderbyelements">orderbyelements</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SimpleJdbcParameter +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="155" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">?</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="63" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="34">S_LONG</text></a><path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m23 -21 h-3"/> + <polygon points="145 10 153 6 153 14"/> + <polygon points="145 10 137 6 137 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a></div> + <div>         ::= '?' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fetch" title="fetch">fetch</a></li><li><a href="#first" title="first">first</a></li><li><a href="#fulltextsearch" title="fulltextsearch">fulltextsearch</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#skip" title="skip">skip</a></li><li><a href="#top" title="top">top</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SimpleJdbcNamedParameter +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="159" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">:</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="41" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="45" y="13">RelObjectNameExt</text></a><path class="line" d="m17 10 h2 m0 0 h4 m10 0 h4 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="149 10 157 6 157 14"/> + <polygon points="149 10 141 6 141 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#simplejdbcnamedparameter" title="SimpleJdbcNamedParameter" shape="rect">SimpleJdbcNamedParameter</a></div> + <div>         ::= ':' <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fulltextsearch" title="fulltextsearch">fulltextsearch</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + LimitWithOffset +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="273" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">LIMIT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="85" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="13">Expression</text></a><rect x="153" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="157" y="13">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="169" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="173" y="13">Expression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#plainlimit" xlink:title="PlainLimit" shape="rect"> + <rect x="43" y="29" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">PlainLimit</text></a><path class="line" d="m17 10 h2 m20 0 h4 m34 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m8 0 h4 m0 0 h4 m60 0 h4 m-214 0 h20 m194 0 h20 m-234 0 q10 0 10 10 m214 0 q0 -10 10 -10 m-224 10 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m50 0 h4 m0 0 h136 m23 -28 h-3"/> + <polygon points="263 10 271 6 271 14"/> + <polygon points="263 10 255 6 255 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#limitwithoffset" title="LimitWithOffset" shape="rect">LimitWithOffset</a></div> + <div>         ::= 'LIMIT' <a href="#expression" title="Expression" shape="rect">Expression</a> ',' <a href="#expression" title="Expression" shape="rect">Expression</a></div> + <div>           | <a href="#plainlimit" title="PlainLimit" shape="rect">PlainLimit</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PlainLimit +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="223" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">LIMIT</text> + <rect x="85" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="105" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="109" y="13">SubSelect</text></a><rect x="167" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="171" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="85" y="29" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="41">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m34 0 h4 m20 0 h4 m12 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m-122 0 h20 m102 0 h20 m-142 0 q10 0 10 10 m122 0 q0 -10 10 -10 m-132 10 v8 m122 0 v-8 m-122 8 q0 10 10 10 m102 0 q10 0 10 -10 m-112 10 h4 m60 0 h4 m0 0 h34 m23 -28 h-3"/> + <polygon points="213 10 221 6 221 14"/> + <polygon points="213 10 205 6 205 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#plainlimit" title="PlainLimit" shape="rect">PlainLimit</a></div> + <div>         ::= 'LIMIT' ( '(' <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ')' | <a href="#expression" title="Expression" shape="rect">Expression</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#delete" title="delete">delete</a></li><li><a href="#limitwithoffset" title="limitwithoffset">limitwithoffset</a></li><li><a href="#update" title="update">update</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Offset +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="243" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">OFFSET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="73" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="77" y="13">Expression</text></a><rect x="161" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="34">ROWS</text> + <rect x="161" y="50" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="62">ROW</text> + <path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m0 0 h4 m60 0 h4 m20 0 h10 m0 0 h36 m-66 0 h20 m46 0 h20 m-86 0 q10 0 10 10 m66 0 q0 -10 10 -10 m-76 10 v1 m66 0 v-1 m-66 1 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m38 0 h4 m-56 -10 v20 m66 0 v-20 m-66 20 v8 m66 0 v-8 m-66 8 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m32 0 h4 m0 0 h6 m23 -49 h-3"/> + <polygon points="233 10 241 6 241 14"/> + <polygon points="233 10 225 6 225 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#offset" title="Offset" shape="rect">Offset</a>   ::= 'OFFSET' <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'ROWS' | 'ROW' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Fetch +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="449" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">FETCH</text> + <rect x="87" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="13">FIRST</text> + <rect x="87" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="41">NEXT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="169" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="173" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="169" y="29" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="173" y="41">SimpleJdbcParameter</text></a><rect x="325" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="329" y="13">ROWS</text> + <rect x="325" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="329" y="41">ROW</text> + <rect x="391" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="395" y="13">ONLY</text> + <path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m20 0 h4 m34 0 h4 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m32 0 h4 m0 0 h2 m40 -28 h4 m48 0 h4 m0 0 h60 m-136 0 h20 m116 0 h20 m-156 0 q10 0 10 10 m136 0 q0 -10 10 -10 m-146 10 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m108 0 h4 m40 -28 h4 m38 0 h4 m-66 0 h20 m46 0 h20 m-86 0 q10 0 10 10 m66 0 q0 -10 10 -10 m-76 10 v8 m66 0 v-8 m-66 8 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m32 0 h4 m0 0 h6 m20 -28 h4 m34 0 h4 m3 0 h-3"/> + <polygon points="439 10 447 6 447 14"/> + <polygon points="439 10 431 6 431 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#fetch" title="Fetch" shape="rect">Fetch</a>    ::= 'FETCH' ( 'FIRST' | 'NEXT' ) ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> ) ( 'ROWS' | 'ROW' ) 'ONLY'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WithIsolation +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="161" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">WITH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-isolation" xlink:title="K_ISOLATION" shape="rect"> + <rect x="65" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="69" y="13">K_ISOLATION</text></a><path class="line" d="m17 10 h2 m0 0 h4 m34 0 h4 m0 0 h4 m72 0 h4 m3 0 h-3"/> + <polygon points="151 10 159 6 159 14"/> + <polygon points="151 10 143 6 143 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#withisolation" title="WithIsolation" shape="rect">WithIsolation</a></div> + <div>         ::= 'WITH' <a href="#k-isolation" title="K_ISOLATION" shape="rect">K_ISOLATION</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#setoperationlist" title="setoperationlist">setoperationlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OptimizeFor +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="235" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">OPTIMIZE</text> + <rect x="83" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="117" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="13">S_LONG</text></a><rect x="173" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="13">ROWS</text> + <path class="line" d="m17 10 h2 m0 0 h4 m52 0 h4 m0 0 h4 m26 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m38 0 h4 m3 0 h-3"/> + <polygon points="225 10 233 6 233 14"/> + <polygon points="225 10 217 6 217 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#optimizefor" title="OptimizeFor" shape="rect">OptimizeFor</a></div> + <div>         ::= 'OPTIMIZE' 'FOR' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> 'ROWS'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Top +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="455" height="126"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">TOP</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="77" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="81" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="77" y="29" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="81" y="41">SimpleJdbcParameter</text></a><rect x="77" y="57" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="81" y="69">:</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="115" y="78" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="119" y="90">S_IDENTIFIER</text></a><rect x="77" y="106" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="81" y="118">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#additiveexpression" xlink:title="AdditiveExpression" shape="rect"> + <rect x="97" y="106" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="101" y="118">AdditiveExpression</text></a><rect x="199" y="106" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="203" y="118">)</text> + <rect x="259" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="34">PERCENT</text> + <rect x="355" y="22" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="359" y="34">WITH TIES</text> + <path class="line" d="m17 10 h2 m0 0 h4 m26 0 h4 m20 0 h4 m48 0 h4 m0 0 h86 m-162 0 h20 m142 0 h20 m-182 0 q10 0 10 10 m162 0 q0 -10 10 -10 m-172 10 v8 m162 0 v-8 m-162 8 q0 10 10 10 m142 0 q10 0 10 -10 m-152 10 h4 m108 0 h4 m0 0 h26 m-152 -10 v20 m162 0 v-20 m-162 20 v8 m162 0 v-8 m-162 8 q0 10 10 10 m142 0 q10 0 10 -10 m-152 10 h4 m10 0 h4 m20 0 h10 m0 0 h72 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v1 m102 0 v-1 m-102 1 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m74 0 h4 m20 -21 h2 m-152 -10 v20 m162 0 v-20 m-162 20 v29 m162 0 v-29 m-162 29 q0 10 10 10 m142 0 q10 0 10 -10 m-152 10 h4 m12 0 h4 m0 0 h4 m94 0 h4 m0 0 h4 m12 0 h4 m40 -105 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m40 -21 h10 m0 0 h54 m-84 0 h20 m64 0 h20 m-104 0 q10 0 10 10 m84 0 q0 -10 10 -10 m-94 10 v1 m84 0 v-1 m-84 1 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m56 0 h4 m23 -21 h-3"/> + <polygon points="445 10 453 6 453 14"/> + <polygon points="445 10 437 6 437 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#top" title="Top" shape="rect">Top</a>      ::= 'TOP' ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> | ':' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a>? | '(' <a href="#additiveexpression" title="AdditiveExpression" shape="rect">AdditiveExpression</a> ')' ) 'PERCENT'? 'WITH TIES'?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Skip +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="233" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SKIP</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="81" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="85" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="81" y="29" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="85" y="41">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="81" y="57" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="85" y="69">SimpleJdbcParameter</text></a><path class="line" d="m17 10 h2 m0 0 h4 m30 0 h4 m20 0 h4 m48 0 h4 m0 0 h60 m-136 0 h20 m116 0 h20 m-156 0 q10 0 10 10 m136 0 q0 -10 10 -10 m-146 10 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m74 0 h4 m0 0 h34 m-126 -10 v20 m136 0 v-20 m-136 20 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m108 0 h4 m23 -56 h-3"/> + <polygon points="223 10 231 6 231 14"/> + <polygon points="223 10 215 6 215 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#skip" title="Skip" shape="rect">Skip</a>     ::= 'SKIP' ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + First +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="277" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">FIRST</text> + <rect x="43" y="29" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">LIMIT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="125" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="125" y="29" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="41">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="125" y="57" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="69">SimpleJdbcParameter</text></a><path class="line" d="m17 10 h2 m20 0 h4 m34 0 h4 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m40 -28 h4 m48 0 h4 m0 0 h60 m-136 0 h20 m116 0 h20 m-156 0 q10 0 10 10 m136 0 q0 -10 10 -10 m-146 10 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m74 0 h4 m0 0 h34 m-126 -10 v20 m136 0 v-20 m-136 20 v8 m136 0 v-8 m-136 8 q0 10 10 10 m116 0 q10 0 10 -10 m-126 10 h4 m108 0 h4 m23 -56 h-3"/> + <polygon points="267 10 275 6 275 14"/> + <polygon points="267 10 259 6 259 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#first" title="First" shape="rect">First</a>    ::= ( 'FIRST' | 'LIMIT' ) ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Expression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="121" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#xorexpression" xlink:title="XorExpression" shape="rect"> + <rect x="23" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">XorExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m74 0 h4 m3 0 h-3"/> + <polygon points="111 10 119 6 119 14"/> + <polygon points="111 10 103 6 103 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#expression" title="Expression" shape="rect">Expression</a></div> + <div>         ::= <a href="#xorexpression" title="XorExpression" shape="rect">XorExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#analyticexpression" title="analyticexpression">analyticexpression</a></li><li><a href="#casewhenexpression" title="casewhenexpression">casewhenexpression</a></li><li><a href="#complexexpressionlist" title="complexexpressionlist">complexexpressionlist</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#declare" title="declare">declare</a></li><li><a href="#having" title="having">having</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#joinerexpression" title="joinerexpression">joinerexpression</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#jsonfunction" title="jsonfunction">jsonfunction</a></li><li><a href="#likeexpression" title="likeexpression">likeexpression</a></li><li><a href="#limitwithoffset" title="limitwithoffset">limitwithoffset</a></li><li><a href="#merge" title="merge">merge</a></li><li><a href="#mergeinsertclause" title="mergeinsertclause">mergeinsertclause</a></li><li><a href="#mergeupdateclause" title="mergeupdateclause">mergeupdateclause</a></li><li><a href="#offset" title="offset">offset</a></li><li><a href="#oraclenamedfunctionparameter" title="oraclenamedfunctionparameter">oraclenamedfunctionparameter</a></li><li><a href="#orderbyelement" title="orderbyelement">orderbyelement</a></li><li><a href="#plainlimit" title="plainlimit">plainlimit</a></li><li><a href="#sqlexpressionlist" title="sqlexpressionlist">sqlexpressionlist</a></li><li><a href="#selectexpressionitem" title="selectexpressionitem">selectexpressionitem</a></li><li><a href="#set" title="set">set</a></li><li><a href="#showtables" title="showtables">showtables</a></li><li><a href="#update" title="update">update</a></li><li><a href="#whenthensearchcondition" title="whenthensearchcondition">whenthensearchcondition</a></li><li><a href="#whereclause" title="whereclause">whereclause</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + XorExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="157" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orexpression" xlink:title="OrExpression" shape="rect"> + <rect x="43" y="29" width="70" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">OrExpression</text></a><rect x="43" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">XOR</text> + <path class="line" d="m17 38 h2 m20 0 h4 m70 0 h4 m-98 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m78 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-78 0 h4 m28 0 h4 m0 0 h42 m23 28 h-3"/> + <polygon points="147 38 155 34 155 42"/> + <polygon points="147 38 139 34 139 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#xorexpression" title="XorExpression" shape="rect">XorExpression</a></div> + <div>         ::= <a href="#orexpression" title="OrExpression" shape="rect">OrExpression</a> ( 'XOR' <a href="#orexpression" title="OrExpression" shape="rect">OrExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#andexpression" title="andexpression">andexpression</a></li><li><a href="#expression" title="expression">expression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OrExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="165" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#andexpression" xlink:title="AndExpression" shape="rect"> + <rect x="43" y="29" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">AndExpression</text></a><rect x="43" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">OR</text> + <path class="line" d="m17 38 h2 m20 0 h4 m78 0 h4 m-106 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m86 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-86 0 h4 m22 0 h4 m0 0 h56 m23 28 h-3"/> + <polygon points="155 38 163 34 163 42"/> + <polygon points="155 38 147 34 147 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#orexpression" title="OrExpression" shape="rect">OrExpression</a></div> + <div>         ::= <a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a> ( 'OR' <a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#xorexpression" title="xorexpression">xorexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AndExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="317" height="154"> + <polygon points="9 66 1 62 1 70"/> + <polygon points="17 66 9 62 9 70"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#condition" xlink:title="Condition" shape="rect"> + <rect x="63" y="57" width="52" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="69">Condition</text></a><rect x="83" y="106" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="118">NOT</text> + <rect x="83" y="134" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="146">!</text> + <rect x="139" y="85" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="97">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#xorexpression" xlink:title="XorExpression" shape="rect"> + <rect x="159" y="85" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="163" y="97">XorExpression</text></a><rect x="241" y="85" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="97">)</text> + <rect x="43" y="29" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">AND</text> + <rect x="43" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">&&</text> + <path class="line" d="m17 66 h2 m40 0 h4 m52 0 h4 m0 0 h138 m-218 0 h20 m198 0 h20 m-238 0 q10 0 10 10 m218 0 q0 -10 10 -10 m-228 10 v8 m218 0 v-8 m-218 8 q0 10 10 10 m198 0 q10 0 10 -10 m-188 10 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m-46 -10 v20 m56 0 v-20 m-56 20 v8 m56 0 v-8 m-56 8 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m10 0 h4 m0 0 h18 m20 -49 h4 m12 0 h4 m0 0 h4 m74 0 h4 m0 0 h4 m12 0 h4 m-238 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m238 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-238 0 h4 m28 0 h4 m0 0 h202 m-248 10 l0 -28 q0 -10 10 -10 m248 38 l0 -28 q0 -10 -10 -10 m-238 0 h4 m22 0 h4 m0 0 h208 m23 56 h-3"/> + <polygon points="307 66 315 62 315 70"/> + <polygon points="307 66 299 62 299 70"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#andexpression" title="AndExpression" shape="rect">AndExpression</a></div> + <div>         ::= ( <a href="#condition" title="Condition" shape="rect">Condition</a> | ( 'NOT' | '!' )? '(' <a href="#xorexpression" title="XorExpression" shape="rect">XorExpression</a> ')' ) ( ( 'AND' | '&&' ) ( <a href="#condition" title="Condition" shape="rect">Condition</a> | ( 'NOT' | '!' )? '(' <a href="#xorexpression" title="XorExpression" shape="rect">XorExpression</a> ')' ) )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#orexpression" title="orexpression">orexpression</a></li><li><a href="#oraclehierarchicalqueryclause" title="oraclehierarchicalqueryclause">oraclehierarchicalqueryclause</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Condition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="249" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">NOT</text> + <rect x="43" y="50" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">!</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#regularcondition" xlink:title="RegularCondition" shape="rect"> + <rect x="119" y="1" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="13">RegularCondition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sqlcondition" xlink:title="SQLCondition" shape="rect"> + <rect x="119" y="29" width="70" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="41">SQLCondition</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m-46 -10 v20 m56 0 v-20 m-56 20 v8 m56 0 v-8 m-56 8 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m10 0 h4 m0 0 h18 m40 -49 h4 m86 0 h4 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v8 m114 0 v-8 m-114 8 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m70 0 h4 m0 0 h16 m23 -28 h-3"/> + <polygon points="239 10 247 6 247 14"/> + <polygon points="239 10 231 6 231 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#condition" title="Condition" shape="rect">Condition</a></div> + <div>         ::= ( 'NOT' | '!' )? ( <a href="#regularcondition" title="RegularCondition" shape="rect">RegularCondition</a> | <a href="#sqlcondition" title="SQLCondition" shape="rect">SQLCondition</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#andexpression" title="andexpression">andexpression</a></li><li><a href="#statement" title="statement">statement</a></li><li><a href="#statements" title="statements">statements</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OverlapsCondition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="567" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlistatleasttwoitems" xlink:title="SimpleExpressionListAtLeastTwoItems" shape="rect"> + <rect x="43" y="1" width="184" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">SimpleExpressionListAtLeastTwoItems</text></a><rect x="235" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="239" y="13">)</text> + <rect x="255" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="259" y="13">OVERLAPS</text> + <rect x="319" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="323" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlistatleasttwoitems" xlink:title="SimpleExpressionListAtLeastTwoItems" shape="rect"> + <rect x="339" y="1" width="184" height="18" class="nonterminal"/> + <text class="nonterminal" x="343" y="13">SimpleExpressionListAtLeastTwoItems</text></a><rect x="531" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="535" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m0 0 h4 m184 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m184 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="557 10 565 6 565 14"/> + <polygon points="557 10 549 6 549 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#overlapscondition" title="OverlapsCondition" shape="rect">OverlapsCondition</a></div> + <div>         ::= '(' <a href="#simpleexpressionlistatleasttwoitems" title="SimpleExpressionListAtLeastTwoItems" shape="rect">SimpleExpressionListAtLeastTwoItems</a> ')' 'OVERLAPS' '(' <a href="#simpleexpressionlistatleasttwoitems" title="SimpleExpressionListAtLeastTwoItems" shape="rect">SimpleExpressionListAtLeastTwoItems</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RegularCondition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="797" height="744"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">PRIOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#comparisonitem" xlink:title="ComparisonItem" shape="rect"> + <rect x="109" y="1" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="113" y="13">ComparisonItem</text></a><rect x="225" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="229" y="34">(</text> + <rect x="245" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="249" y="34">+</text> + <rect x="267" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="271" y="34">)</text> + <rect x="327" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="13">></text> + <rect x="327" y="29" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="41"><</text> + <rect x="327" y="57" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="69">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-greaterthanequals" xlink:title="OP_GREATERTHANEQUALS" shape="rect"> + <rect x="327" y="85" width="134" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="97">OP_GREATERTHANEQUALS</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-minorthanequals" xlink:title="OP_MINORTHANEQUALS" shape="rect"> + <rect x="327" y="113" width="124" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="125">OP_MINORTHANEQUALS</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-notequalsstandard" xlink:title="OP_NOTEQUALSSTANDARD" shape="rect"> + <rect x="327" y="141" width="138" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="153">OP_NOTEQUALSSTANDARD</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-notequalsbang" xlink:title="OP_NOTEQUALSBANG" shape="rect"> + <rect x="327" y="169" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="181">OP_NOTEQUALSBANG</text></a><rect x="327" y="197" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="209">@@</text> + <rect x="327" y="225" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="237">~</text> + <rect x="367" y="274" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="371" y="286">NOT</text> + <rect x="423" y="253" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="265">REGEXP</text> + <rect x="347" y="302" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="351" y="314">RLIKE</text> + <rect x="515" y="274" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="519" y="286">BINARY</text> + <rect x="327" y="330" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="342">~*</text> + <rect x="327" y="358" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="370">!~</text> + <rect x="327" y="386" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="398">!~*</text> + <rect x="327" y="414" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="426">@></text> + <rect x="327" y="442" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="454"><@</text> + <rect x="327" y="470" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="482">?</text> + <rect x="327" y="498" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="510">?|</text> + <rect x="327" y="526" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="538">?&</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-concat" xlink:title="OP_CONCAT" shape="rect"> + <rect x="327" y="554" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="331" y="566">OP_CONCAT</text></a><rect x="327" y="582" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="594">-</text> + <rect x="327" y="610" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="622">-#</text> + <rect x="327" y="638" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="650"><-></text> + <rect x="327" y="666" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="678"><#></text> + <rect x="625" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="629" y="34">PRIOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#comparisonitem" xlink:title="ComparisonItem" shape="rect"> + <rect x="691" y="1" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="695" y="13">ComparisonItem</text></a><rect x="699" y="724" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="703" y="736">(</text> + <rect x="719" y="724" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="723" y="736">+</text> + <rect x="741" y="724" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="745" y="736">)</text> + <path class="line" d="m17 10 h2 m20 0 h10 m0 0 h36 m-66 0 h20 m46 0 h20 m-86 0 q10 0 10 10 m66 0 q0 -10 10 -10 m-76 10 v1 m66 0 v-1 m-66 1 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m38 0 h4 m20 -21 h4 m88 0 h4 m20 0 h10 m0 0 h52 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v1 m82 0 v-1 m-82 1 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m12 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m12 0 h4 m40 -21 h4 m14 0 h4 m0 0 h236 m-278 0 h20 m258 0 h20 m-298 0 q10 0 10 10 m278 0 q0 -10 10 -10 m-288 10 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m14 0 h4 m0 0 h236 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m14 0 h4 m0 0 h236 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m134 0 h4 m0 0 h116 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m124 0 h4 m0 0 h126 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m138 0 h4 m0 0 h112 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m112 0 h4 m0 0 h138 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m26 0 h4 m0 0 h224 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m14 0 h4 m0 0 h236 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-228 10 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m44 0 h4 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v29 m148 0 v-29 m-148 29 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m34 0 h4 m0 0 h86 m40 -49 h10 m0 0 h40 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v1 m70 0 v-1 m-70 1 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m42 0 h4 m-248 -31 v20 m278 0 v-20 m-278 20 v57 m278 0 v-57 m-278 57 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m20 0 h4 m0 0 h230 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m16 0 h4 m0 0 h234 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m22 0 h4 m0 0 h228 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m24 0 h4 m0 0 h226 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m24 0 h4 m0 0 h226 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m12 0 h4 m0 0 h238 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m16 0 h4 m0 0 h234 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m20 0 h4 m0 0 h230 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m68 0 h4 m0 0 h182 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m10 0 h4 m0 0 h240 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m18 0 h4 m0 0 h232 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m26 0 h4 m0 0 h224 m-268 -10 v20 m278 0 v-20 m-278 20 v8 m278 0 v-8 m-278 8 q0 10 10 10 m258 0 q10 0 10 -10 m-268 10 h4 m30 0 h4 m0 0 h220 m40 -665 h10 m0 0 h36 m-66 0 h20 m46 0 h20 m-86 0 q10 0 10 10 m66 0 q0 -10 10 -10 m-76 10 v1 m66 0 v-1 m-66 1 q0 10 10 10 m46 0 q10 0 10 -10 m-56 10 h4 m38 0 h4 m20 -21 h4 m88 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-132 702 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h52 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v1 m82 0 v-1 m-82 1 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m12 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m12 0 h4 m23 -21 h-3"/> + <polygon points="787 712 795 708 795 716"/> + <polygon points="787 712 779 708 779 716"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#regularcondition" title="RegularCondition" shape="rect">RegularCondition</a></div> + <div>         ::= 'PRIOR'? <a href="#comparisonitem" title="ComparisonItem" shape="rect">ComparisonItem</a> ( '(' '+' ')' )? ( '>' | '<' | '=' | <a href="#op-greaterthanequals" title="OP_GREATERTHANEQUALS" shape="rect">OP_GREATERTHANEQUALS</a> | <a href="#op-minorthanequals" title="OP_MINORTHANEQUALS" shape="rect">OP_MINORTHANEQUALS</a> | <a href="#op-notequalsstandard" title="OP_NOTEQUALSSTANDARD" shape="rect">OP_NOTEQUALSSTANDARD</a> | <a href="#op-notequalsbang" title="OP_NOTEQUALSBANG" shape="rect">OP_NOTEQUALSBANG</a> | '@@' | '~' | ( 'NOT'? 'REGEXP' | 'RLIKE' ) 'BINARY'? | '~*' | '!~' | '!~*' | '@>' + | '<@' | '?' | '?|' | '?&' | <a href="#op-concat" title="OP_CONCAT" shape="rect">OP_CONCAT</a> | '-' | '-#' | '<->' | '<#>' ) 'PRIOR'? <a href="#comparisonitem" title="ComparisonItem" shape="rect">ComparisonItem</a> ( '(' '+' ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#condition" title="condition">condition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SQLCondition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="329" height="266"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#existsexpression" xlink:title="ExistsExpression" shape="rect"> + <rect x="43" y="1" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">ExistsExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#inexpression" xlink:title="InExpression" shape="rect"> + <rect x="43" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">InExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#overlapscondition" xlink:title="OverlapsCondition" shape="rect"> + <rect x="43" y="57" width="92" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">OverlapsCondition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="43" y="85" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="97">SimpleExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#between" xlink:title="Between" shape="rect"> + <rect x="161" y="106" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="118">Between</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#isnullexpression" xlink:title="IsNullExpression" shape="rect"> + <rect x="161" y="134" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="146">IsNullExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#isbooleanexpression" xlink:title="IsBooleanExpression" shape="rect"> + <rect x="161" y="162" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="174">IsBooleanExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#likeexpression" xlink:title="LikeExpression" shape="rect"> + <rect x="161" y="190" width="76" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="202">LikeExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#isdistinctexpression" xlink:title="IsDistinctExpression" shape="rect"> + <rect x="161" y="218" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="230">IsDistinctExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#similartoexpression" xlink:title="SimilarToExpression" shape="rect"> + <rect x="161" y="246" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="258">SimilarToExpression</text></a><path class="line" d="m17 10 h2 m20 0 h4 m84 0 h4 m0 0 h158 m-270 0 h20 m250 0 h20 m-290 0 q10 0 10 10 m270 0 q0 -10 10 -10 m-280 10 v8 m270 0 v-8 m-270 8 q0 10 10 10 m250 0 q10 0 10 -10 m-260 10 h4 m68 0 h4 m0 0 h174 m-260 -10 v20 m270 0 v-20 m-270 20 v8 m270 0 v-8 m-270 8 q0 10 10 10 m250 0 q10 0 10 -10 m-260 10 h4 m92 0 h4 m0 0 h150 m-260 -10 v20 m270 0 v-20 m-270 20 v8 m270 0 v-8 m-270 8 q0 10 10 10 m250 0 q10 0 10 -10 m-260 10 h4 m90 0 h4 m20 0 h10 m0 0 h102 m-132 0 h20 m112 0 h20 m-152 0 q10 0 10 10 m132 0 q0 -10 10 -10 m-142 10 v1 m132 0 v-1 m-132 1 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m50 0 h4 m0 0 h54 m-122 -10 v20 m132 0 v-20 m-132 20 v8 m132 0 v-8 m-132 8 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m82 0 h4 m0 0 h22 m-122 -10 v20 m132 0 v-20 m-132 20 v8 m132 0 v-8 m-132 8 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m104 0 h4 m-122 -10 v20 m132 0 v-20 m-132 20 v8 m132 0 v-8 m-132 8 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m76 0 h4 m0 0 h28 m-122 -10 v20 m132 0 v-20 m-132 20 v8 m132 0 v-8 m-132 8 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m98 0 h4 m0 0 h6 m-122 -10 v20 m132 0 v-20 m-132 20 v8 m132 0 v-8 m-132 8 q0 10 10 10 m112 0 q10 0 10 -10 m-122 10 h4 m98 0 h4 m0 0 h6 m43 -245 h-3"/> + <polygon points="319 10 327 6 327 14"/> + <polygon points="319 10 311 6 311 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sqlcondition" title="SQLCondition" shape="rect">SQLCondition</a></div> + <div>         ::= <a href="#existsexpression" title="ExistsExpression" shape="rect">ExistsExpression</a></div> + <div>           | <a href="#inexpression" title="InExpression" shape="rect">InExpression</a></div> + <div>           | <a href="#overlapscondition" title="OverlapsCondition" shape="rect">OverlapsCondition</a></div> + <div>           | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( <a href="#between" title="Between" shape="rect">Between</a> | <a href="#isnullexpression" title="IsNullExpression" shape="rect">IsNullExpression</a> | <a href="#isbooleanexpression" title="IsBooleanExpression" shape="rect">IsBooleanExpression</a> | <a href="#likeexpression" title="LikeExpression" shape="rect">LikeExpression</a> | <a href="#isdistinctexpression" title="IsDistinctExpression" shape="rect">IsDistinctExpression</a> | <a href="#similartoexpression" title="SimilarToExpression" shape="rect">SimilarToExpression</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#condition" title="condition">condition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + InExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="583" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="23" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SimpleExpression</text></a><rect x="141" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="34">(</text> + <rect x="161" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="34">+</text> + <rect x="183" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="34">)</text> + <rect x="243" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="247" y="34">NOT</text> + <rect x="299" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="303" y="13">IN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="345" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="349" y="13">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="345" y="29" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="349" y="41">Function</text></a><rect x="345" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="349" y="69">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="385" y="57" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="389" y="69">ComplexExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="385" y="85" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="389" y="97">SubSelect</text></a><rect x="527" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="69">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="345" y="113" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="349" y="125">SimpleExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m90 0 h4 m20 0 h10 m0 0 h52 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v1 m82 0 v-1 m-82 1 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m12 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m12 0 h4 m40 -21 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m18 0 h4 m20 0 h4 m90 0 h4 m0 0 h104 m-222 0 h20 m202 0 h20 m-242 0 q10 0 10 10 m222 0 q0 -10 10 -10 m-232 10 v8 m222 0 v-8 m-222 8 q0 10 10 10 m202 0 q10 0 10 -10 m-212 10 h4 m48 0 h4 m0 0 h146 m-212 -10 v20 m222 0 v-20 m-222 20 v8 m222 0 v-8 m-222 8 q0 10 10 10 m202 0 q10 0 10 -10 m-212 10 h4 m12 0 h4 m20 0 h4 m114 0 h4 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v8 m142 0 v-8 m-142 8 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m54 0 h4 m0 0 h60 m20 -28 h4 m12 0 h4 m-212 -10 v20 m222 0 v-20 m-222 20 v36 m222 0 v-36 m-222 36 q0 10 10 10 m202 0 q10 0 10 -10 m-212 10 h4 m90 0 h4 m0 0 h104 m23 -112 h-3"/> + <polygon points="573 10 581 6 581 14"/> + <polygon points="573 10 565 6 565 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#inexpression" title="InExpression" shape="rect">InExpression</a></div> + <div>         ::= <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( '(' '+' ')' )? 'NOT'? 'IN' ( <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#function" title="Function" shape="rect">Function</a> | '(' ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) ')' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MultiInExpressions +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="271" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">(</text> + <rect x="63" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="83" y="29" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="41">SimpleExpressionList</text></a><rect x="195" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="41">)</text> + <rect x="63" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">,</text> + <rect x="235" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="239" y="41">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m12 0 h4 m20 0 h4 m12 0 h4 m0 0 h4 m104 0 h4 m0 0 h4 m12 0 h4 m-172 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m152 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-152 0 h4 m8 0 h4 m0 0 h136 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="261 38 269 34 269 42"/> + <polygon points="261 38 253 34 253 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#multiinexpressions" title="MultiInExpressions" shape="rect">MultiInExpressions</a></div> + <div>         ::= '(' '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ')' ( ',' '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ')' )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + Between +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="407" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">NOT</text> + <rect x="99" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="103" y="13">BETWEEN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="159" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="163" y="13">SimpleExpression</text></a><rect x="257" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="13">AND</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="293" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="297" y="13">SimpleExpression</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m52 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="397 10 405 6 405 14"/> + <polygon points="397 10 389 6 389 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#between" title="Between" shape="rect">Between</a>  ::= 'NOT'? 'BETWEEN' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> 'AND' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + LikeExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="449" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">NOT</text> + <rect x="119" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="13">LIKE</text> + <rect x="119" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="41">ILIKE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="177" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="181" y="13">SimpleExpression</text></a><rect x="295" y="22" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="299" y="34">ESCAPE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="345" y="22" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="349" y="34">Expression</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m40 -21 h4 m28 0 h4 m0 0 h2 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -28 h4 m90 0 h4 m20 0 h10 m0 0 h108 m-138 0 h20 m118 0 h20 m-158 0 q10 0 10 10 m138 0 q0 -10 10 -10 m-148 10 v1 m138 0 v-1 m-138 1 q0 10 10 10 m118 0 q10 0 10 -10 m-128 10 h4 m42 0 h4 m0 0 h4 m60 0 h4 m23 -21 h-3"/> + <polygon points="439 10 447 6 447 14"/> + <polygon points="439 10 431 6 431 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#likeexpression" title="LikeExpression" shape="rect">LikeExpression</a></div> + <div>         ::= 'NOT'? ( 'LIKE' | 'ILIKE' ) <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( 'ESCAPE' <a href="#expression" title="Expression" shape="rect">Expression</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SimilarToExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="483" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">NOT</text> + <rect x="99" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="103" y="13">SIMILAR</text> + <rect x="153" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="157" y="13">TO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="181" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="13">SimpleExpression</text></a><rect x="299" y="22" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="303" y="34">ESCAPE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="349" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="353" y="34">S_CHAR_LITERAL</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m46 0 h4 m0 0 h4 m20 0 h4 m0 0 h4 m90 0 h4 m20 0 h10 m0 0 h138 m-168 0 h20 m148 0 h20 m-188 0 q10 0 10 10 m168 0 q0 -10 10 -10 m-178 10 v1 m168 0 v-1 m-168 1 q0 10 10 10 m148 0 q10 0 10 -10 m-158 10 h4 m42 0 h4 m0 0 h4 m90 0 h4 m23 -21 h-3"/> + <polygon points="473 10 481 6 481 14"/> + <polygon points="473 10 465 6 465 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#similartoexpression" title="SimilarToExpression" shape="rect">SimilarToExpression</a></div> + <div>         ::= 'NOT'? 'SIMILAR' 'TO' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( 'ESCAPE' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IsDistinctExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="341" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">IS</text> + <rect x="69" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="73" y="34">NOT</text> + <rect x="125" y="1" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="13">DISTINCT</text> + <rect x="183" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="13">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="227" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="231" y="13">SimpleExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m18 0 h4 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m50 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="331 10 339 6 339 14"/> + <polygon points="331 10 323 6 323 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#isdistinctexpression" title="IsDistinctExpression" shape="rect">IsDistinctExpression</a></div> + <div>         ::= 'IS' 'NOT'? 'DISTINCT' 'FROM' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IsNullExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="221" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ISNULL</text> + <rect x="43" y="29" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">IS</text> + <rect x="89" y="50" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="62">NOT</text> + <rect x="145" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="41">NULL</text> + <path class="line" d="m17 10 h2 m20 0 h4 m40 0 h4 m0 0 h94 m-162 0 h20 m142 0 h20 m-182 0 q10 0 10 10 m162 0 q0 -10 10 -10 m-172 10 v8 m162 0 v-8 m-162 8 q0 10 10 10 m142 0 q10 0 10 -10 m-152 10 h4 m18 0 h4 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m32 0 h4 m23 -28 h-3"/> + <polygon points="211 10 219 6 219 14"/> + <polygon points="211 10 203 6 203 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#isnullexpression" title="IsNullExpression" shape="rect">IsNullExpression</a></div> + <div>         ::= 'ISNULL'</div> + <div>           | 'IS' 'NOT'? 'NULL'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IsBooleanExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="225" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">IS</text> + <rect x="69" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="73" y="34">NOT</text> + <rect x="145" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="13">TRUE</text> + <rect x="145" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="41">FALSE</text> + <path class="line" d="m17 10 h2 m0 0 h4 m18 0 h4 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m40 -21 h4 m32 0 h4 m0 0 h4 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m23 -28 h-3"/> + <polygon points="215 10 223 6 223 14"/> + <polygon points="215 10 207 6 207 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#isbooleanexpression" title="IsBooleanExpression" shape="rect">IsBooleanExpression</a></div> + <div>         ::= 'IS' 'NOT'? ( 'TRUE' | 'FALSE' )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExistsExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="185" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="71" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="75" y="13">SimpleExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m40 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="175 10 183 6 183 14"/> + <polygon points="175 10 167 6 167 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#existsexpression" title="ExistsExpression" shape="rect">ExistsExpression</a></div> + <div>         ::= 'EXISTS' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SQLExpressionList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="147" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="43" y="29" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">Expression</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m60 0 h4 m-88 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m68 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-68 0 h4 m8 0 h4 m0 0 h52 m23 28 h-3"/> + <polygon points="137 38 145 34 145 42"/> + <polygon points="137 38 129 34 129 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sqlexpressionlist" title="SQLExpressionList" shape="rect">SQLExpressionList</a></div> + <div>         ::= <a href="#expression" title="Expression" shape="rect">Expression</a> ( ',' <a href="#expression" title="Expression" shape="rect">Expression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + SimpleExpressionList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="177" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="43" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">SimpleExpression</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m20 0 h4 m90 0 h4 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m98 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-98 0 h4 m8 0 h4 m0 0 h82 m23 28 h-3"/> + <polygon points="167 38 175 34 175 42"/> + <polygon points="167 38 159 34 159 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a></div> + <div>         ::= <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#anycomparisonexpression" title="anycomparisonexpression">anycomparisonexpression</a></li><li><a href="#execute" title="execute">execute</a></li><li><a href="#expressionlistitem" title="expressionlistitem">expressionlistitem</a></li><li><a href="#groupbycolumnreferences" title="groupbycolumnreferences">groupbycolumnreferences</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#multiinexpressions" title="multiinexpressions">multiinexpressions</a></li><li><a href="#mysqlgroupconcat" title="mysqlgroupconcat">mysqlgroupconcat</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#specialstringfunctionwithnamedparameters" title="specialstringfunctionwithnamedparameters">specialstringfunctionwithnamedparameters</a></li><li><a href="#values" title="values">values</a></li><li><a href="#withitem" title="withitem">withitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ComplexExpressionList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="285" height="77"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#oraclenamedfunctionparameter" xlink:title="OracleNamedFunctionParameter" shape="rect"> + <rect x="63" y="29" width="158" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="41">OracleNamedFunctionParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="63" y="57" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="69">Expression</text></a><rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">,</text> + <path class="line" d="m17 38 h2 m40 0 h4 m158 0 h4 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v8 m186 0 v-8 m-186 8 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m60 0 h4 m0 0 h98 m-206 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m206 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-206 0 h4 m8 0 h4 m0 0 h190 m23 28 h-3"/> + <polygon points="275 38 283 34 283 42"/> + <polygon points="275 38 267 34 267 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a></div> + <div>         ::= ( <a href="#oraclenamedfunctionparameter" title="OracleNamedFunctionParameter" shape="rect">OracleNamedFunctionParameter</a> | <a href="#expression" title="Expression" shape="rect">Expression</a> ) ( ',' ( <a href="#oraclenamedfunctionparameter" title="OracleNamedFunctionParameter" shape="rect">OracleNamedFunctionParameter</a> | <a href="#expression" title="Expression" shape="rect">Expression</a> ) )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#groupbycolumnreferences" title="groupbycolumnreferences">groupbycolumnreferences</a></li><li><a href="#inexpression" title="inexpression">inexpression</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#specialstringfunctionwithnamedparameters" title="specialstringfunctionwithnamedparameters">specialstringfunctionwithnamedparameters</a></li><li><a href="#update" title="update">update</a></li><li><a href="#windowdefinition" title="windowdefinition">windowdefinition</a></li><li><a href="#windowfun" title="windowfun">windowfun</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + NamedExpressionList1 +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="431" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">BOTH</text> + <rect x="43" y="29" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">LEADING</text> + <rect x="43" y="57" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">TRAILING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="123" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="127" y="13">SimpleExpression</text></a><rect x="241" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="13">FROM</text> + <rect x="241" y="29" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="41">IN</text> + <rect x="241" y="57" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="69">PLACING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="317" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="321" y="13">SimpleExpression</text></a><path class="line" d="m17 10 h2 m20 0 h4 m34 0 h4 m0 0 h18 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m48 0 h4 m0 0 h4 m-70 -10 v20 m80 0 v-20 m-80 20 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -56 h4 m90 0 h4 m20 0 h4 m36 0 h4 m0 0 h12 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m18 0 h4 m0 0 h30 m-66 -10 v20 m76 0 v-20 m-76 20 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -56 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="421 10 429 6 429 14"/> + <polygon points="421 10 413 6 413 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#namedexpressionlist1" title="NamedExpressionList1" shape="rect">NamedExpressionList1</a></div> + <div>         ::= ( 'BOTH' | 'LEADING' | 'TRAILING' ) <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( 'FROM' | 'IN' | 'PLACING' ) <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#specialstringfunctionwithnamedparameters" title="specialstringfunctionwithnamedparameters">specialstringfunctionwithnamedparameters</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + NamedExpressionListExprFirst +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="725" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="23" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">SimpleExpression</text></a><rect x="141" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="13">FROM</text> + <rect x="141" y="29" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="41">IN</text> + <rect x="141" y="57" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="69">PLACING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="217" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="221" y="13">SimpleExpression</text></a><rect x="355" y="22" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="359" y="34">FOR</text> + <rect x="355" y="50" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="359" y="62">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="419" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="423" y="34">SimpleExpression</text></a><rect x="537" y="43" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="541" y="55">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="571" y="43" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="575" y="55">SimpleExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m90 0 h4 m20 0 h4 m36 0 h4 m0 0 h12 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m18 0 h4 m0 0 h30 m-66 -10 v20 m76 0 v-20 m-76 20 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -56 h4 m90 0 h4 m20 0 h10 m0 0 h344 m-374 0 h20 m354 0 h20 m-394 0 q10 0 10 10 m374 0 q0 -10 10 -10 m-384 10 v1 m374 0 v-1 m-374 1 q0 10 10 10 m354 0 q10 0 10 -10 m-344 10 h4 m26 0 h4 m0 0 h10 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m20 -28 h4 m90 0 h4 m20 0 h10 m0 0 h122 m-152 0 h20 m132 0 h20 m-172 0 q10 0 10 10 m152 0 q0 -10 10 -10 m-162 10 v1 m152 0 v-1 m-152 1 q0 10 10 10 m132 0 q10 0 10 -10 m-142 10 h4 m26 0 h4 m0 0 h4 m90 0 h4 m43 -42 h-3"/> + <polygon points="715 10 723 6 723 14"/> + <polygon points="715 10 707 6 707 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#namedexpressionlistexprfirst" title="NamedExpressionListExprFirst" shape="rect">NamedExpressionListExprFirst</a></div> + <div>         ::= <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( 'FROM' | 'IN' | 'PLACING' ) <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ( 'FOR' | 'FROM' ) <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( 'FOR' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )? )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#specialstringfunctionwithnamedparameters" title="specialstringfunctionwithnamedparameters">specialstringfunctionwithnamedparameters</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SimpleExpressionListAtLeastTwoItems +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="291" height="33"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="23" y="13" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="25">SimpleExpression</text></a><rect x="141" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="25">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="157" y="13" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="25">SimpleExpression</text></a><path class="line" d="m17 22 h2 m0 0 h4 m90 0 h4 m20 0 h4 m8 0 h4 m0 0 h4 m90 0 h4 m-134 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m114 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-114 0 h10 m0 0 h104 m23 21 h-3"/> + <polygon points="281 22 289 18 289 26"/> + <polygon points="281 22 273 18 273 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#simpleexpressionlistatleasttwoitems" title="SimpleExpressionListAtLeastTwoItems" shape="rect">SimpleExpressionListAtLeastTwoItems</a></div> + <div>         ::= <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ( ',' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> )+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#overlapscondition" title="overlapscondition">overlapscondition</a></li><li><a href="#valuelistexpression" title="valuelistexpression">valuelistexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ComparisonItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="219" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#anycomparisonexpression" xlink:title="AnyComparisonExpression" shape="rect"> + <rect x="43" y="1" width="132" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">AnyComparisonExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#valuelistexpression" xlink:title="ValueListExpression" shape="rect"> + <rect x="43" y="29" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">ValueListExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="43" y="57" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">SimpleExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rowconstructor" xlink:title="RowConstructor" shape="rect"> + <rect x="43" y="85" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="97">RowConstructor</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#primaryexpression" xlink:title="PrimaryExpression" shape="rect"> + <rect x="43" y="113" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="125">PrimaryExpression</text></a><path class="line" d="m17 10 h2 m20 0 h4 m132 0 h4 m-160 0 h20 m140 0 h20 m-180 0 q10 0 10 10 m160 0 q0 -10 10 -10 m-170 10 v8 m160 0 v-8 m-160 8 q0 10 10 10 m140 0 q10 0 10 -10 m-150 10 h4 m98 0 h4 m0 0 h34 m-150 -10 v20 m160 0 v-20 m-160 20 v8 m160 0 v-8 m-160 8 q0 10 10 10 m140 0 q10 0 10 -10 m-150 10 h4 m90 0 h4 m0 0 h42 m-150 -10 v20 m160 0 v-20 m-160 20 v8 m160 0 v-8 m-160 8 q0 10 10 10 m140 0 q10 0 10 -10 m-150 10 h4 m82 0 h4 m0 0 h50 m-150 -10 v20 m160 0 v-20 m-160 20 v8 m160 0 v-8 m-160 8 q0 10 10 10 m140 0 q10 0 10 -10 m-150 10 h4 m94 0 h4 m0 0 h38 m23 -112 h-3"/> + <polygon points="209 10 217 6 217 14"/> + <polygon points="209 10 201 6 201 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#comparisonitem" title="ComparisonItem" shape="rect">ComparisonItem</a></div> + <div>         ::= <a href="#anycomparisonexpression" title="AnyComparisonExpression" shape="rect">AnyComparisonExpression</a></div> + <div>           | <a href="#valuelistexpression" title="ValueListExpression" shape="rect">ValueListExpression</a></div> + <div>           | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div> + <div>           | <a href="#rowconstructor" title="RowConstructor" shape="rect">RowConstructor</a></div> + <div>           | <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AnyComparisonExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="365" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ANY</text> + <rect x="43" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">SOME</text> + <rect x="43" y="57" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">ALL</text> + <rect x="107" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="13">(</text> + <rect x="147" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="151" y="13">VALUES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="197" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="201" y="13">SimpleExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="147" y="29" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="151" y="41">SubSelect</text></a><rect x="329" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="333" y="13">)</text> + <path class="line" d="m17 10 h2 m20 0 h4 m26 0 h4 m0 0 h10 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m24 0 h4 m0 0 h12 m20 -56 h4 m12 0 h4 m20 0 h4 m42 0 h4 m0 0 h4 m104 0 h4 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m54 0 h4 m0 0 h100 m20 -28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="355 10 363 6 363 14"/> + <polygon points="355 10 347 6 347 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#anycomparisonexpression" title="AnyComparisonExpression" shape="rect">AnyComparisonExpression</a></div> + <div>         ::= ( 'ANY' | 'SOME' | 'ALL' ) '(' ( 'VALUES' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#comparisonitem" title="comparisonitem">comparisonitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SimpleExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="317" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="43" y="22" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="34">UserVariable</text></a><rect x="137" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="141" y="34">=</text> + <rect x="137" y="50" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="141" y="62">:=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#concatexpression" xlink:title="ConcatExpression" shape="rect"> + <rect x="201" y="1" width="92" height="18" class="nonterminal"/> + <text class="nonterminal" x="205" y="13">ConcatExpression</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h128 m-158 0 h20 m138 0 h20 m-178 0 q10 0 10 10 m158 0 q0 -10 10 -10 m-168 10 v1 m158 0 v-1 m-158 1 q0 10 10 10 m138 0 q10 0 10 -10 m-148 10 h4 m66 0 h4 m20 0 h4 m14 0 h4 m0 0 h2 m-44 0 h20 m24 0 h20 m-64 0 q10 0 10 10 m44 0 q0 -10 10 -10 m-54 10 v8 m44 0 v-8 m-44 8 q0 10 10 10 m24 0 q10 0 10 -10 m-34 10 h4 m16 0 h4 m40 -49 h4 m92 0 h4 m3 0 h-3"/> + <polygon points="307 10 315 6 315 14"/> + <polygon points="307 10 299 6 299 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div> + <div>         ::= ( <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> ( '=' | ':=' ) )? <a href="#concatexpression" title="ConcatExpression" shape="rect">ConcatExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#arrayconstructor" title="arrayconstructor">arrayconstructor</a></li><li><a href="#arrayexpression" title="arrayexpression">arrayexpression</a></li><li><a href="#between" title="between">between</a></li><li><a href="#castexpression" title="castexpression">castexpression</a></li><li><a href="#comparisonitem" title="comparisonitem">comparisonitem</a></li><li><a href="#existsexpression" title="existsexpression">existsexpression</a></li><li><a href="#extractexpression" title="extractexpression">extractexpression</a></li><li><a href="#groupbycolumnreferences" title="groupbycolumnreferences">groupbycolumnreferences</a></li><li><a href="#inexpression" title="inexpression">inexpression</a></li><li><a href="#insert" title="insert">insert</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#isdistinctexpression" title="isdistinctexpression">isdistinctexpression</a></li><li><a href="#likeexpression" title="likeexpression">likeexpression</a></li><li><a href="#mergeinsertclause" title="mergeinsertclause">mergeinsertclause</a></li><li><a href="#mergeupdateclause" title="mergeupdateclause">mergeupdateclause</a></li><li><a href="#namedexpressionlist1" title="namedexpressionlist1">namedexpressionlist1</a></li><li><a href="#namedexpressionlistexprfirst" title="namedexpressionlistexprfirst">namedexpressionlistexprfirst</a></li><li><a href="#pivotselectexpritem" title="pivotselectexpritem">pivotselectexpritem</a></li><li><a href="#replace" title="replace">replace</a></li><li><a href="#sqlcondition" title="sqlcondition">sqlcondition</a></li><li><a href="#safecastexpression" title="safecastexpression">safecastexpression</a></li><li><a href="#showtables" title="showtables">showtables</a></li><li><a href="#similartoexpression" title="similartoexpression">similartoexpression</a></li><li><a href="#simpleexpressionlist" title="simpleexpressionlist">simpleexpressionlist</a></li><li><a href="#simpleexpressionlistatleasttwoitems" title="simpleexpressionlistatleasttwoitems">simpleexpressionlistatleasttwoitems</a></li><li><a href="#trycastexpression" title="trycastexpression">trycastexpression</a></li><li><a href="#update" title="update">update</a></li><li><a href="#upsert" title="upsert">upsert</a></li><li><a href="#valueslist" title="valueslist">valueslist</a></li><li><a href="#variableexpression" title="variableexpression">variableexpression</a></li><li><a href="#windowoffset" title="windowoffset">windowoffset</a></li><li><a href="#xmlserializeexpr" title="xmlserializeexpr">xmlserializeexpr</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ConcatExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="155" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#bitwiseandor" xlink:title="BitwiseAndOr" shape="rect"> + <rect x="43" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">BitwiseAndOr</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#op-concat" xlink:title="OP_CONCAT" shape="rect"> + <rect x="43" y="1" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">OP_CONCAT</text></a><path class="line" d="m17 38 h2 m20 0 h4 m68 0 h4 m-96 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m76 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-76 0 h4 m68 0 h4 m23 28 h-3"/> + <polygon points="145 38 153 34 153 42"/> + <polygon points="145 38 137 34 137 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#concatexpression" title="ConcatExpression" shape="rect">ConcatExpression</a></div> + <div>         ::= <a href="#bitwiseandor" title="BitwiseAndOr" shape="rect">BitwiseAndOr</a> ( <a href="#op-concat" title="OP_CONCAT" shape="rect">OP_CONCAT</a> <a href="#bitwiseandor" title="BitwiseAndOr" shape="rect">BitwiseAndOr</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#simpleexpression" title="simpleexpression">simpleexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + BitwiseAndOr +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="181" height="133"> + <polygon points="9 122 1 118 1 126"/> + <polygon points="17 122 9 118 9 126"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#additiveexpression" xlink:title="AdditiveExpression" shape="rect"> + <rect x="43" y="113" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="125">AdditiveExpression</text></a><rect x="43" y="85" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">|</text> + <rect x="43" y="57" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">&</text> + <rect x="43" y="29" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41"><<</text> + <rect x="43" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">>></text> + <path class="line" d="m17 122 h2 m20 0 h4 m94 0 h4 m-122 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m102 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-102 0 h4 m12 0 h4 m0 0 h82 m-112 10 l0 -28 q0 -10 10 -10 m112 38 l0 -28 q0 -10 -10 -10 m-102 0 h4 m14 0 h4 m0 0 h80 m-112 10 l0 -28 q0 -10 10 -10 m112 38 l0 -28 q0 -10 -10 -10 m-102 0 h4 m22 0 h4 m0 0 h72 m-112 10 l0 -28 q0 -10 10 -10 m112 38 l0 -28 q0 -10 -10 -10 m-102 0 h4 m22 0 h4 m0 0 h72 m23 112 h-3"/> + <polygon points="171 122 179 118 179 126"/> + <polygon points="171 122 163 118 163 126"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#bitwiseandor" title="BitwiseAndOr" shape="rect">BitwiseAndOr</a></div> + <div>         ::= <a href="#additiveexpression" title="AdditiveExpression" shape="rect">AdditiveExpression</a> ( ( '|' | '&' | '<<' | '>>' ) <a href="#additiveexpression" title="AdditiveExpression" shape="rect">AdditiveExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#concatexpression" title="concatexpression">concatexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AdditiveExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="199" height="77"> + <polygon points="9 66 1 62 1 70"/> + <polygon points="17 66 9 62 9 70"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#multiplicativeexpression" xlink:title="MultiplicativeExpression" shape="rect"> + <rect x="43" y="57" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">MultiplicativeExpression</text></a><rect x="43" y="29" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">+</text> + <rect x="43" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">-</text> + <path class="line" d="m17 66 h2 m20 0 h4 m112 0 h4 m-140 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m120 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-120 0 h4 m14 0 h4 m0 0 h98 m-130 10 l0 -28 q0 -10 10 -10 m130 38 l0 -28 q0 -10 -10 -10 m-120 0 h4 m10 0 h4 m0 0 h102 m23 56 h-3"/> + <polygon points="189 66 197 62 197 70"/> + <polygon points="189 66 181 62 181 70"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#additiveexpression" title="AdditiveExpression" shape="rect">AdditiveExpression</a></div> + <div>         ::= <a href="#multiplicativeexpression" title="MultiplicativeExpression" shape="rect">MultiplicativeExpression</a> ( ( '+' | '-' ) <a href="#multiplicativeexpression" title="MultiplicativeExpression" shape="rect">MultiplicativeExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#bitwiseandor" title="bitwiseandor">bitwiseandor</a></li><li><a href="#top" title="top">top</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MultiplicativeExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="143" height="133"> + <polygon points="9 122 1 118 1 126"/> + <polygon points="17 122 9 118 9 126"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#bitwisexor" xlink:title="BitwiseXor" shape="rect"> + <rect x="43" y="113" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="125">BitwiseXor</text></a><rect x="43" y="85" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">*</text> + <rect x="43" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">/</text> + <rect x="43" y="29" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">DIV</text> + <rect x="43" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">%</text> + <path class="line" d="m17 122 h2 m20 0 h4 m56 0 h4 m-84 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m64 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-64 0 h4 m14 0 h4 m0 0 h42 m-74 10 l0 -28 q0 -10 10 -10 m74 38 l0 -28 q0 -10 -10 -10 m-64 0 h4 m12 0 h4 m0 0 h44 m-74 10 l0 -28 q0 -10 10 -10 m74 38 l0 -28 q0 -10 -10 -10 m-64 0 h4 m24 0 h4 m0 0 h32 m-74 10 l0 -28 q0 -10 10 -10 m74 38 l0 -28 q0 -10 -10 -10 m-64 0 h4 m20 0 h4 m0 0 h36 m23 112 h-3"/> + <polygon points="133 122 141 118 141 126"/> + <polygon points="133 122 125 118 125 126"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#multiplicativeexpression" title="MultiplicativeExpression" shape="rect">MultiplicativeExpression</a></div> + <div>         ::= <a href="#bitwisexor" title="BitwiseXor" shape="rect">BitwiseXor</a> ( ( '*' | '/' | 'DIV' | '%' ) <a href="#bitwisexor" title="BitwiseXor" shape="rect">BitwiseXor</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#additiveexpression" title="additiveexpression">additiveexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + BitwiseXor +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="181" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#primaryexpression" xlink:title="PrimaryExpression" shape="rect"> + <rect x="43" y="29" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">PrimaryExpression</text></a><rect x="43" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">^</text> + <path class="line" d="m17 38 h2 m20 0 h4 m94 0 h4 m-122 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m102 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-102 0 h4 m14 0 h4 m0 0 h80 m23 28 h-3"/> + <polygon points="171 38 179 34 179 42"/> + <polygon points="171 38 163 34 163 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#bitwisexor" title="BitwiseXor" shape="rect">BitwiseXor</a></div> + <div>         ::= <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a> ( '^' <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#multiplicativeexpression" title="multiplicativeexpression">multiplicativeexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ArrayExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="453" height="75"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">[</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="83" y="34" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="46">SimpleExpression</text></a><rect x="221" y="34" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="46">:</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="259" y="55" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="263" y="67">SimpleExpression</text></a><rect x="397" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="401" y="25">]</text> + <path class="line" d="m17 22 h2 m20 0 h4 m12 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h146 m-176 0 h20 m156 0 h20 m-196 0 q10 0 10 10 m176 0 q0 -10 10 -10 m-186 10 v1 m176 0 v-1 m-176 1 q0 10 10 10 m156 0 q10 0 10 -10 m-166 10 h4 m10 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -42 h4 m12 0 h4 m-394 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m374 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-374 0 h10 m0 0 h364 m23 21 h-3"/> + <polygon points="443 22 451 18 451 26"/> + <polygon points="443 22 435 18 435 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#arrayexpression" title="ArrayExpression" shape="rect">ArrayExpression</a></div> + <div>         ::= ( '[' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a>? ( ':' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a>? )? ']' )+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PrimaryExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="789" height="1163"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="34">NOT</text> + <rect x="43" y="50" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">!</text> + <rect x="119" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="34">+</text> + <rect x="119" y="50" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="62">-</text> + <rect x="119" y="78" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="90">~</text> + <rect x="181" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="13">NULL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#casewhenexpression" xlink:title="CaseWhenExpression" shape="rect"> + <rect x="181" y="29" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="41">CaseWhenExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="181" y="57" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="69">SimpleJdbcParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jdbcnamedparameter" xlink:title="JdbcNamedParameter" shape="rect"> + <rect x="181" y="85" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="97">JdbcNamedParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="181" y="113" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="125">UserVariable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#numericbind" xlink:title="NumericBind" shape="rect"> + <rect x="181" y="141" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="153">NumericBind</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#extractexpression" xlink:title="ExtractExpression" shape="rect"> + <rect x="181" y="169" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="181">ExtractExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#mysqlgroupconcat" xlink:title="MySQLGroupConcat" shape="rect"> + <rect x="181" y="197" width="102" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="209">MySQLGroupConcat</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#xmlserializeexpr" xlink:title="XMLSerializeExpr" shape="rect"> + <rect x="181" y="225" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="237">XMLSerializeExpr</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jsonexpression" xlink:title="JsonExpression" shape="rect"> + <rect x="181" y="253" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="265">JsonExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jsonfunction" xlink:title="JsonFunction" shape="rect"> + <rect x="181" y="281" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="293">JsonFunction</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jsonaggregatefunction" xlink:title="JsonAggregateFunction" shape="rect"> + <rect x="181" y="309" width="116" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="321">JsonAggregateFunction</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fulltextsearch" xlink:title="FullTextSearch" shape="rect"> + <rect x="181" y="337" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="349">FullTextSearch</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="181" y="365" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="377">Function</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#analyticexpression" xlink:title="AnalyticExpression" shape="rect"> + <rect x="257" y="386" width="92" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="398">AnalyticExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#intervalexpression" xlink:title="IntervalExpression" shape="rect"> + <rect x="181" y="414" width="92" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="426">IntervalExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-double" xlink:title="S_DOUBLE" shape="rect"> + <rect x="181" y="442" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="454">S_DOUBLE</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="181" y="470" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="482">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-hex" xlink:title="S_HEX" shape="rect"> + <rect x="181" y="498" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="510">S_HEX</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#castexpression" xlink:title="CastExpression" shape="rect"> + <rect x="181" y="526" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="538">CastExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#trycastexpression" xlink:title="TryCastExpression" shape="rect"> + <rect x="181" y="554" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="566">TryCastExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#safecastexpression" xlink:title="SafeCastExpression" shape="rect"> + <rect x="181" y="582" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="594">SafeCastExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-time-key-expr" xlink:title="K_TIME_KEY_EXPR" shape="rect"> + <rect x="181" y="610" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="622">K_TIME_KEY_EXPR</text></a><rect x="181" y="638" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="650">CURRENT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#datetimeliteralexpression" xlink:title="DateTimeLiteralExpression" shape="rect"> + <rect x="181" y="666" width="128" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="678">DateTimeLiteralExpression</text></a><rect x="181" y="694" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="706">ARRAY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#arrayconstructor" xlink:title="ArrayConstructor" shape="rect"> + <rect x="227" y="694" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="231" y="706">ArrayConstructor</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#nextvalexpression" xlink:title="NextValExpression" shape="rect"> + <rect x="181" y="722" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="734">NextValExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#connectbyrootoperator" xlink:title="ConnectByRootOperator" shape="rect"> + <rect x="181" y="750" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="762">ConnectByRootOperator</text></a><rect x="181" y="778" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="790">ALL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="181" y="806" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="818">Column</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="181" y="834" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="185" y="846">S_CHAR_LITERAL</text></a><rect x="201" y="862" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="874">{d</text> + <rect x="201" y="890" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="902">{t</text> + <rect x="201" y="918" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="930">{ts</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="249" y="862" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="253" y="874">S_CHAR_LITERAL</text></a><rect x="347" y="862" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="351" y="874">}</text> + <rect x="181" y="946" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="958">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="221" y="946" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="225" y="958">SubSelect</text></a><rect x="283" y="946" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="287" y="958">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="241" y="974" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="245" y="986">ComplexExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="241" y="1002" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="245" y="1014">SimpleExpressionList</text></a><rect x="383" y="974" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="387" y="986">)</text> + <rect x="423" y="995" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="1007">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext" xlink:title="RelObjectNameExt" shape="rect"> + <rect x="439" y="995" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="443" y="1007">RelObjectNameExt</text></a><rect x="621" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="625" y="34">COLLATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="677" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="681" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#intervalexpressionwithoutinterval" xlink:title="IntervalExpressionWithoutInterval" shape="rect"> + <rect x="160" y="1077" width="162" height="18" class="nonterminal"/> + <text class="nonterminal" x="164" y="1089">IntervalExpressionWithoutInterval</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#arrayexpression" xlink:title="ArrayExpression" shape="rect"> + <rect x="370" y="1077" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="374" y="1089">ArrayExpression</text></a><rect x="520" y="1056" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="524" y="1068">::</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="540" y="1056" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="544" y="1068">ColDataType</text></a><rect x="449" y="1131" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="453" y="1143">AT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="477" y="1131" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="481" y="1143">K_DATETIMELITERAL</text></a><rect x="589" y="1131" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="593" y="1143">ZONE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#primaryexpression" xlink:title="PrimaryExpression" shape="rect"> + <rect x="631" y="1131" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="635" y="1143">PrimaryExpression</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m-46 -10 v20 m56 0 v-20 m-56 20 v8 m56 0 v-8 m-56 8 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m10 0 h4 m0 0 h18 m40 -49 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m10 0 h4 m0 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m40 -77 h4 m32 0 h4 m0 0 h360 m-420 0 h20 m400 0 h20 m-440 0 q10 0 10 10 m420 0 q0 -10 10 -10 m-430 10 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m112 0 h4 m0 0 h280 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m108 0 h4 m0 0 h284 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m112 0 h4 m0 0 h280 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m66 0 h4 m0 0 h326 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m66 0 h4 m0 0 h326 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m90 0 h4 m0 0 h302 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m102 0 h4 m0 0 h290 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m86 0 h4 m0 0 h306 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m80 0 h4 m0 0 h312 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m68 0 h4 m0 0 h324 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m116 0 h4 m0 0 h276 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m74 0 h4 m0 0 h318 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m48 0 h4 m20 0 h10 m0 0 h90 m-120 0 h20 m100 0 h20 m-140 0 q10 0 10 10 m120 0 q0 -10 10 -10 m-130 10 v1 m120 0 v-1 m-120 1 q0 10 10 10 m100 0 q10 0 10 -10 m-110 10 h4 m92 0 h4 m20 -21 h204 m-410 -10 v20 m420 0 v-20 m-420 20 v29 m420 0 v-29 m-420 29 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m92 0 h4 m0 0 h300 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m60 0 h4 m0 0 h332 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m48 0 h4 m0 0 h344 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m40 0 h4 m0 0 h352 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m80 0 h4 m0 0 h312 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m94 0 h4 m0 0 h298 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m100 0 h4 m0 0 h292 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m98 0 h4 m0 0 h294 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m50 0 h4 m0 0 h342 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m128 0 h4 m0 0 h264 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m38 0 h4 m0 0 h4 m86 0 h4 m0 0 h260 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m94 0 h4 m0 0 h298 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m120 0 h4 m0 0 h272 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m24 0 h4 m0 0 h368 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m46 0 h4 m0 0 h346 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m90 0 h4 m0 0 h302 m-410 -10 v20 m420 0 v-20 m-420 20 v8 m420 0 v-8 m-420 8 q0 10 10 10 m400 0 q10 0 10 -10 m-390 10 h4 m18 0 h4 m0 0 h2 m-48 0 h20 m28 0 h20 m-68 0 q10 0 10 10 m48 0 q0 -10 10 -10 m-58 10 v8 m48 0 v-8 m-48 8 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m16 0 h4 m0 0 h4 m-38 -10 v20 m48 0 v-20 m-48 20 v8 m48 0 v-8 m-48 8 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m20 -56 h4 m90 0 h4 m0 0 h4 m14 0 h4 m0 0 h212 m-410 -10 v20 m420 0 v-20 m-420 20 v64 m420 0 v-64 m-420 64 q0 10 10 10 m400 0 q10 0 10 -10 m-410 10 h4 m12 0 h4 m20 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m0 0 h258 m-360 0 h20 m340 0 h20 m-380 0 q10 0 10 10 m360 0 q0 -10 10 -10 m-370 10 v8 m360 0 v-8 m-360 8 q0 10 10 10 m340 0 q10 0 10 -10 m-330 10 h4 m114 0 h4 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v8 m142 0 v-8 m-142 8 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m104 0 h4 m0 0 h10 m20 -28 h4 m12 0 h4 m20 0 h10 m0 0 h108 m-138 0 h20 m118 0 h20 m-158 0 q10 0 10 10 m138 0 q0 -10 10 -10 m-148 10 v1 m138 0 v-1 m-138 1 q0 10 10 10 m118 0 q10 0 10 -10 m-128 10 h4 m8 0 h4 m0 0 h4 m94 0 h4 m80 -994 h10 m0 0 h128 m-158 0 h20 m138 0 h20 m-178 0 q10 0 10 10 m158 0 q0 -10 10 -10 m-168 10 v1 m158 0 v-1 m-158 1 q0 10 10 10 m138 0 q10 0 10 -10 m-148 10 h4 m48 0 h4 m0 0 h4 m74 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-663 1055 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h160 m-190 0 h20 m170 0 h20 m-210 0 q10 0 10 10 m190 0 q0 -10 10 -10 m-200 10 v1 m190 0 v-1 m-190 1 q0 10 10 10 m170 0 q10 0 10 -10 m-180 10 h4 m162 0 h4 m40 -21 h10 m0 0 h80 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v1 m110 0 v-1 m-110 1 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m82 0 h4 m60 -21 h4 m12 0 h4 m0 0 h4 m68 0 h4 m-116 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m96 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-96 0 h10 m0 0 h86 m-136 21 h20 m136 0 h20 m-176 0 q10 0 10 10 m156 0 q0 -10 10 -10 m-166 10 v1 m156 0 v-1 m-156 1 q0 10 10 10 m136 0 q10 0 10 -10 m-146 10 h10 m0 0 h126 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-271 75 l2 0 m2 0 l2 0 m2 0 l2 0 m42 0 h4 m20 0 h4 m0 0 h4 m104 0 h4 m0 0 h4 m34 0 h4 m0 0 h4 m94 0 h4 m-304 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m284 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-284 0 h10 m0 0 h274 m-324 21 h20 m324 0 h20 m-364 0 q10 0 10 10 m344 0 q0 -10 10 -10 m-354 10 v1 m344 0 v-1 m-344 1 q0 10 10 10 m324 0 q10 0 10 -10 m-334 10 h10 m0 0 h314 m23 -21 h-3"/> + <polygon points="779 1140 787 1136 787 1144"/> + <polygon points="779 1140 771 1136 771 1144"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a></div> + <div>         ::= ( 'NOT' | '!' )? ( '+' | '-' | '~' )? ( 'NULL' | <a href="#casewhenexpression" title="CaseWhenExpression" shape="rect">CaseWhenExpression</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> | <a href="#jdbcnamedparameter" title="JdbcNamedParameter" shape="rect">JdbcNamedParameter</a> | <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> | <a href="#numericbind" title="NumericBind" shape="rect">NumericBind</a> | <a href="#extractexpression" title="ExtractExpression" shape="rect">ExtractExpression</a> | <a href="#mysqlgroupconcat" title="MySQLGroupConcat" shape="rect">MySQLGroupConcat</a> | <a href="#xmlserializeexpr" title="XMLSerializeExpr" shape="rect">XMLSerializeExpr</a> | <a href="#jsonexpression" title="JsonExpression" shape="rect">JsonExpression</a> | <a href="#jsonfunction" title="JsonFunction" shape="rect">JsonFunction</a> | <a href="#jsonaggregatefunction" title="JsonAggregateFunction" shape="rect">JsonAggregateFunction</a> | <a href="#fulltextsearch" title="FullTextSearch" shape="rect">FullTextSearch</a> | <a href="#function" title="Function" shape="rect">Function</a> <a href="#analyticexpression" title="AnalyticExpression" shape="rect">AnalyticExpression</a>? | <a href="#intervalexpression" title="IntervalExpression" shape="rect">IntervalExpression</a> | <a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> | <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-hex" title="S_HEX" shape="rect">S_HEX</a> | <a href="#castexpression" title="CastExpression" shape="rect">CastExpression</a> | <a href="#trycastexpression" title="TryCastExpression" shape="rect">TryCastExpression</a> | <a href="#safecastexpression" title="SafeCastExpression" shape="rect">SafeCastExpression</a> | <a href="#k-time-key-expr" title="K_TIME_KEY_EXPR" shape="rect">K_TIME_KEY_EXPR</a> | 'CURRENT' | <a href="#datetimeliteralexpression" title="DateTimeLiteralExpression" shape="rect">DateTimeLiteralExpression</a> | 'ARRAY' <a href="#arrayconstructor" title="ArrayConstructor" shape="rect">ArrayConstructor</a> | <a href="#nextvalexpression" title="NextValExpression" shape="rect">NextValExpression</a> | <a href="#connectbyrootoperator" title="ConnectByRootOperator" shape="rect">ConnectByRootOperator</a> | 'ALL' | <a href="#column" title="Column" shape="rect">Column</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | ( '{d' | '{t' | '{ts' ) <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> '}' | '(' ( <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ')' | ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ) ')' ( '.' <a href="#relobjectnameext" title="RelObjectNameExt" shape="rect">RelObjectNameExt</a> )? ) ) ( 'COLLATE' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> )? <a href="#intervalexpressionwithoutinterval" title="IntervalExpressionWithoutInterval" shape="rect">IntervalExpressionWithoutInterval</a>? <a href="#arrayexpression" title="ArrayExpression" shape="rect">ArrayExpression</a>? ( '::' <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> )* ( 'AT' <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> 'ZONE' <a href="#primaryexpression" title="PrimaryExpression" shape="rect">PrimaryExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#bitwisexor" title="bitwisexor">bitwisexor</a></li><li><a href="#comparisonitem" title="comparisonitem">comparisonitem</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#replace" title="replace">replace</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ConnectByRootOperator +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="205" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="104" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CONNECT_BY_ROOT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="135" y="1" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="139" y="13">Column</text></a><path class="line" d="m17 10 h2 m0 0 h4 m104 0 h4 m0 0 h4 m46 0 h4 m3 0 h-3"/> + <polygon points="195 10 203 6 203 14"/> + <polygon points="195 10 187 6 187 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#connectbyrootoperator" title="ConnectByRootOperator" shape="rect">ConnectByRootOperator</a></div> + <div>         ::= 'CONNECT_BY_ROOT' <a href="#column" title="Column" shape="rect">Column</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + NextValExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="213" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-nextval" xlink:title="K_NEXTVAL" shape="rect"> + <rect x="23" y="1" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">K_NEXTVAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="95" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="99" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m64 0 h4 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="203 10 211 6 211 14"/> + <polygon points="203 10 195 6 195 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#nextvalexpression" title="NextValExpression" shape="rect">NextValExpression</a></div> + <div>         ::= <a href="#k-nextval" title="K_NEXTVAL" shape="rect">K_NEXTVAL</a> <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JdbcNamedParameter +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="165" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">:</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="41" y="1" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="45" y="13">RelObjectNameExt2</text></a><path class="line" d="m17 10 h2 m0 0 h4 m10 0 h4 m0 0 h4 m100 0 h4 m3 0 h-3"/> + <polygon points="155 10 163 6 163 14"/> + <polygon points="155 10 147 6 147 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#jdbcnamedparameter" title="JdbcNamedParameter" shape="rect">JdbcNamedParameter</a></div> + <div>         ::= ':' <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OracleNamedFunctionParameter +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="245" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="23" y="1" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameExt2</text></a><rect x="131" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="13">=></text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="161" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="13">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m100 0 h4 m0 0 h4 m22 0 h4 m0 0 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="235 10 243 6 243 14"/> + <polygon points="235 10 227 6 227 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#oraclenamedfunctionparameter" title="OracleNamedFunctionParameter" shape="rect">OracleNamedFunctionParameter</a></div> + <div>         ::= <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a> '=>' <a href="#expression" title="Expression" shape="rect">Expression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#complexexpressionlist" title="complexexpressionlist">complexexpressionlist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + UserVariable +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="261" height="77"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="29" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">@</text> + <rect x="43" y="57" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">@@</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnameext2" xlink:title="RelObjectNameExt2" shape="rect"> + <rect x="117" y="29" width="100" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="41">RelObjectNameExt2</text></a><rect x="117" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="13">.</text> + <path class="line" d="m17 38 h2 m20 0 h4 m16 0 h4 m0 0 h10 m-54 0 h20 m34 0 h20 m-74 0 q10 0 10 10 m54 0 q0 -10 10 -10 m-64 10 v8 m54 0 v-8 m-54 8 q0 10 10 10 m34 0 q10 0 10 -10 m-44 10 h4 m26 0 h4 m40 -28 h4 m100 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m108 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-108 0 h4 m8 0 h4 m0 0 h92 m23 28 h-3"/> + <polygon points="251 38 259 34 259 42"/> + <polygon points="251 38 243 34 243 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a></div> + <div>         ::= ( '@' | '@@' ) <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a> ( '.' <a href="#relobjectnameext2" title="RelObjectNameExt2" shape="rect">RelObjectNameExt2</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#declare" title="declare">declare</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#outputclause" title="outputclause">outputclause</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#set" title="set">set</a></li><li><a href="#simpleexpression" title="simpleexpression">simpleexpression</a></li><li><a href="#variableexpression" title="variableexpression">variableexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + NumericBind +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="113" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">:</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="41" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="45" y="13">S_LONG</text></a><path class="line" d="m17 10 h2 m0 0 h4 m10 0 h4 m0 0 h4 m48 0 h4 m3 0 h-3"/> + <polygon points="103 10 111 6 111 14"/> + <polygon points="103 10 95 6 95 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#numericbind" title="NumericBind" shape="rect">NumericBind</a></div> + <div>         ::= ':' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + DateTimeLiteralExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="249" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="23" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">K_DATETIMELITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="135" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="139" y="13">S_CHAR_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m104 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="239 10 247 6 247 14"/> + <polygon points="239 10 231 6 231 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#datetimeliteralexpression" title="DateTimeLiteralExpression" shape="rect">DateTimeLiteralExpression</a></div> + <div>         ::= <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ArrayConstructor +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="297" height="89"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">[</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="103" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="41">SimpleExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#arrayconstructor" xlink:title="ArrayConstructor" shape="rect"> + <rect x="103" y="57" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="69">ArrayConstructor</text></a><rect x="83" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">,</text> + <rect x="261" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="265" y="41">]</text> + <path class="line" d="m17 38 h2 m0 0 h4 m12 0 h4 m60 0 h4 m90 0 h4 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m86 0 h4 m0 0 h4 m-138 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m138 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-138 0 h4 m8 0 h4 m0 0 h122 m-178 28 h20 m178 0 h20 m-218 0 q10 0 10 10 m198 0 q0 -10 10 -10 m-208 10 v29 m198 0 v-29 m-198 29 q0 10 10 10 m178 0 q10 0 10 -10 m-188 10 h10 m0 0 h168 m20 -49 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="287 38 295 34 295 42"/> + <polygon points="287 38 279 34 279 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#arrayconstructor" title="ArrayConstructor" shape="rect">ArrayConstructor</a></div> + <div>         ::= '[' ( ( <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> | <a href="#arrayconstructor" title="ArrayConstructor" shape="rect">ArrayConstructor</a> ) ( ',' ( <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> | <a href="#arrayconstructor" title="ArrayConstructor" shape="rect">ArrayConstructor</a> ) )* )? ']'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#arrayconstructor" title="arrayconstructor">arrayconstructor</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JsonExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="671" height="285"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#casewhenexpression" xlink:title="CaseWhenExpression" shape="rect"> + <rect x="43" y="13" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="25">CaseWhenExpression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="43" y="41" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="53">SimpleJdbcParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jdbcnamedparameter" xlink:title="JdbcNamedParameter" shape="rect"> + <rect x="43" y="69" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="81">JdbcNamedParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="43" y="97" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="109">UserVariable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jsonfunction" xlink:title="JsonFunction" shape="rect"> + <rect x="43" y="125" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="137">JsonFunction</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jsonaggregatefunction" xlink:title="JsonAggregateFunction" shape="rect"> + <rect x="43" y="153" width="116" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="165">JsonAggregateFunction</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#fulltextsearch" xlink:title="FullTextSearch" shape="rect"> + <rect x="43" y="181" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="193">FullTextSearch</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="43" y="209" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="221">Column</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="43" y="237" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="249">S_CHAR_LITERAL</text></a><rect x="43" y="265" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="277">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="63" y="265" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="277">SubSelect</text></a><rect x="125" y="265" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="277">)</text> + <rect x="227" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="231" y="25">::</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="247" y="13" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="251" y="25">ColDataType</text></a><rect x="423" y="13" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="25">-></text> + <rect x="423" y="41" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="53">->></text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="497" y="13" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="501" y="25">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="497" y="41" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="501" y="53">S_LONG</text></a><rect x="423" y="69" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="81">#></text> + <rect x="423" y="97" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="109">#>></text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="481" y="69" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="485" y="81">S_CHAR_LITERAL</text></a><path class="line" d="m17 22 h2 m20 0 h4 m112 0 h4 m0 0 h4 m-144 0 h20 m124 0 h20 m-164 0 q10 0 10 10 m144 0 q0 -10 10 -10 m-154 10 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m108 0 h4 m0 0 h8 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m112 0 h4 m0 0 h4 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m66 0 h4 m0 0 h50 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m68 0 h4 m0 0 h48 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m116 0 h4 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m74 0 h4 m0 0 h42 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m46 0 h4 m0 0 h70 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m90 0 h4 m0 0 h26 m-134 -10 v20 m144 0 v-20 m-144 20 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m12 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m0 0 h22 m60 -252 h4 m12 0 h4 m0 0 h4 m68 0 h4 m-116 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m96 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-96 0 h10 m0 0 h86 m-136 21 h20 m136 0 h20 m-176 0 q10 0 10 10 m156 0 q0 -10 10 -10 m-166 10 v1 m156 0 v-1 m-156 1 q0 10 10 10 m136 0 q10 0 10 -10 m-146 10 h10 m0 0 h126 m80 -21 h4 m18 0 h4 m0 0 h8 m-54 0 h20 m34 0 h20 m-74 0 q10 0 10 10 m54 0 q0 -10 10 -10 m-64 10 v8 m54 0 v-8 m-54 8 q0 10 10 10 m34 0 q10 0 10 -10 m-44 10 h4 m26 0 h4 m40 -28 h4 m90 0 h4 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m48 0 h4 m0 0 h42 m-212 -28 h20 m212 0 h20 m-252 0 q10 0 10 10 m232 0 q0 -10 10 -10 m-242 10 v36 m232 0 v-36 m-232 36 q0 10 10 10 m212 0 q10 0 10 -10 m-202 10 h4 m22 0 h4 m0 0 h8 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -28 h4 m90 0 h4 m0 0 h36 m-252 -56 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m252 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-252 0 h10 m0 0 h242 m23 21 h-3"/> + <polygon points="661 22 669 18 669 26"/> + <polygon points="661 22 653 18 653 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#jsonexpression" title="JsonExpression" shape="rect">JsonExpression</a></div> + <div>         ::= ( <a href="#casewhenexpression" title="CaseWhenExpression" shape="rect">CaseWhenExpression</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> | <a href="#jdbcnamedparameter" title="JdbcNamedParameter" shape="rect">JdbcNamedParameter</a> | <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> | <a href="#jsonfunction" title="JsonFunction" shape="rect">JsonFunction</a> | <a href="#jsonaggregatefunction" title="JsonAggregateFunction" shape="rect">JsonAggregateFunction</a> | <a href="#fulltextsearch" title="FullTextSearch" shape="rect">FullTextSearch</a> | <a href="#column" title="Column" shape="rect">Column</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | '(' <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ')' ) ( '::' <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> )* ( ( '->' | '->>' ) ( <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ) | ( '#>' | '#>>' ) <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> )+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JsonFunction +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="1697" height="295"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="74" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">JSON_OBJECT</text> + <rect x="125" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="25">(</text> + <rect x="185" y="34" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="46">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="237" y="13" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="25">S_CHAR_LITERAL</text></a><rect x="375" y="34" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="46">:</text> + <rect x="375" y="62" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="74">,</text> + <rect x="375" y="90" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="102">VALUE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="439" y="34" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="443" y="46">Expression</text></a><rect x="527" y="55" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="67">FORMAT</text> + <rect x="581" y="55" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="585" y="67">JSON</text> + <rect x="701" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="705" y="25">,</text> + <rect x="737" y="34" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="741" y="46">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="789" y="13" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="793" y="25">S_CHAR_LITERAL</text></a><rect x="907" y="13" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="911" y="25">:</text> + <rect x="907" y="41" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="911" y="53">,</text> + <rect x="907" y="69" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="911" y="81">VALUE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="971" y="13" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="975" y="25">Expression</text></a><rect x="1059" y="34" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1063" y="46">FORMAT</text> + <rect x="1113" y="34" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1117" y="46">JSON</text> + <rect x="1273" y="34" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1277" y="46">NULL</text> + <rect x="1273" y="62" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1277" y="74">ABSENT</text> + <rect x="1345" y="34" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1349" y="46">ON</text> + <rect x="1375" y="34" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1379" y="46">NULL</text> + <rect x="1475" y="34" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1479" y="46">WITH</text> + <rect x="1475" y="62" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1479" y="74">WITHOUT</text> + <rect x="1557" y="34" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1561" y="46">UNIQUE</text> + <rect x="1609" y="34" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1613" y="46">KEYS</text> + <rect x="43" y="144" width="70" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="156">JSON_ARRAY</text> + <rect x="121" y="144" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="156">(</text> + <rect x="201" y="144" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="156">NULL</text> + <rect x="241" y="144" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="156">ON</text> + <rect x="271" y="144" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="275" y="156">NULL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="221" y="200" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="225" y="212">Expression</text></a><rect x="309" y="221" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="313" y="233">FORMAT</text> + <rect x="363" y="221" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="367" y="233">JSON</text> + <rect x="221" y="172" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="184">,</text> + <rect x="523" y="165" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="527" y="177">ABSENT</text> + <rect x="575" y="165" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="579" y="177">ON</text> + <rect x="605" y="165" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="609" y="177">NULL</text> + <rect x="1661" y="275" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1665" y="287">)</text> + <path class="line" d="m17 22 h2 m20 0 h4 m74 0 h4 m0 0 h4 m12 0 h4 m40 0 h10 m0 0 h22 m-52 0 h20 m32 0 h20 m-72 0 q10 0 10 10 m52 0 q0 -10 10 -10 m-62 10 v1 m52 0 v-1 m-52 1 q0 10 10 10 m32 0 q10 0 10 -10 m-42 10 h4 m24 0 h4 m20 -21 h4 m90 0 h4 m20 0 h10 m0 0 h276 m-306 0 h20 m286 0 h20 m-326 0 q10 0 10 10 m306 0 q0 -10 10 -10 m-316 10 v1 m306 0 v-1 m-306 1 q0 10 10 10 m286 0 q10 0 10 -10 m-276 10 h4 m10 0 h4 m0 0 h26 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m8 0 h4 m0 0 h28 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m20 -56 h4 m60 0 h4 m20 0 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m46 0 h4 m0 0 h4 m32 0 h4 m80 -42 h4 m8 0 h4 m20 0 h10 m0 0 h22 m-52 0 h20 m32 0 h20 m-72 0 q10 0 10 10 m52 0 q0 -10 10 -10 m-62 10 v1 m52 0 v-1 m-52 1 q0 10 10 10 m32 0 q10 0 10 -10 m-42 10 h4 m24 0 h4 m20 -21 h4 m90 0 h4 m20 0 h4 m10 0 h4 m0 0 h26 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m8 0 h4 m0 0 h28 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m20 -56 h4 m60 0 h4 m20 0 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m46 0 h4 m0 0 h4 m32 0 h4 m-472 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m472 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-472 0 h10 m0 0 h462 m-512 21 h20 m512 0 h20 m-552 0 q10 0 10 10 m532 0 q0 -10 10 -10 m-542 10 v57 m532 0 v-57 m-532 57 q0 10 10 10 m512 0 q10 0 10 -10 m-522 10 h10 m0 0 h502 m-1048 -77 h20 m1048 0 h20 m-1088 0 q10 0 10 10 m1068 0 q0 -10 10 -10 m-1078 10 v78 m1068 0 v-78 m-1068 78 q0 10 10 10 m1048 0 q10 0 10 -10 m-1058 10 h10 m0 0 h1038 m40 -98 h10 m0 0 h152 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v1 m182 0 v-1 m-182 1 q0 10 10 10 m162 0 q10 0 10 -10 m-152 10 h4 m32 0 h4 m0 0 h12 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m22 0 h4 m0 0 h4 m32 0 h4 m40 -21 h10 m0 0 h182 m-212 0 h20 m192 0 h20 m-232 0 q10 0 10 10 m212 0 q0 -10 10 -10 m-222 10 v1 m212 0 v-1 m-212 1 q0 10 10 10 m192 0 q10 0 10 -10 m-182 10 h4 m34 0 h4 m0 0 h20 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v8 m82 0 v-8 m-82 8 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m54 0 h4 m20 -28 h4 m44 0 h4 m0 0 h4 m30 0 h4 m-1624 -21 h20 m1624 0 h20 m-1664 0 q10 0 10 10 m1644 0 q0 -10 10 -10 m-1654 10 v111 m1644 0 v-111 m-1644 111 q0 10 10 10 m1624 0 q10 0 10 -10 m-1634 10 h4 m70 0 h4 m0 0 h4 m12 0 h4 m60 0 h4 m32 0 h4 m0 0 h4 m22 0 h4 m0 0 h4 m32 0 h4 m0 0 h132 m-262 0 h20 m242 0 h20 m-282 0 q10 0 10 10 m262 0 q0 -10 10 -10 m-272 10 v36 m262 0 v-36 m-262 36 q0 10 10 10 m242 0 q10 0 10 -10 m-232 10 h4 m60 0 h4 m20 0 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m46 0 h4 m0 0 h4 m32 0 h4 m-202 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m202 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-202 0 h4 m8 0 h4 m0 0 h186 m-262 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m282 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-282 0 h10 m0 0 h272 m-322 21 h20 m322 0 h20 m-362 0 q10 0 10 10 m342 0 q0 -10 10 -10 m-352 10 v78 m342 0 v-78 m-342 78 q0 10 10 10 m322 0 q10 0 10 -10 m-332 10 h10 m0 0 h312 m40 -98 h10 m0 0 h112 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v1 m142 0 v-1 m-142 1 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m44 0 h4 m0 0 h4 m22 0 h4 m0 0 h4 m32 0 h4 m20 -21 h1002 m22 -131 l2 0 m2 0 l2 0 m2 0 l2 0 m-50 262 l2 0 m2 0 l2 0 m2 0 l2 0 m2 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="1687 284 1695 280 1695 288"/> + <polygon points="1687 284 1679 280 1679 288"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#jsonfunction" title="JsonFunction" shape="rect">JsonFunction</a></div> + <div>         ::= ( 'JSON_OBJECT' '(' ( 'KEY'? <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> ( ( ':' | ',' | 'VALUE' ) <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'FORMAT' 'JSON' )? )? ( ',' 'KEY'? <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> ( ':' | ',' | 'VALUE' ) <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'FORMAT' 'JSON' )? )* )? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? ( ( 'WITH' | 'WITHOUT' + ) 'UNIQUE' 'KEYS' )? | 'JSON_ARRAY' '(' ( 'NULL' 'ON' 'NULL' | <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'FORMAT' 'JSON' )? ( ',' <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'FORMAT' 'JSON' )? )* )* ( 'ABSENT' 'ON' 'NULL' )? ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + JsonAggregateFunction +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="1253" height="436"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="92" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">JSON_OBJECTAGG</text> + <rect x="143" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="147" y="13">(</text> + <rect x="183" y="22" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="34">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#dt-zone" xlink:title="DT_ZONE" shape="rect"> + <rect x="255" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="13">DT_ZONE</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-double" xlink:title="S_DOUBLE" shape="rect"> + <rect x="255" y="29" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="41">S_DOUBLE</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="255" y="57" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="69">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-hex" xlink:title="S_HEX" shape="rect"> + <rect x="255" y="85" width="40" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="97">S_HEX</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="255" y="113" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="125">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="255" y="141" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="153">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="255" y="169" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="181">S_QUOTED_IDENTIFIER</text></a><rect x="423" y="1" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="13">:</text> + <rect x="423" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="427" y="41">VALUE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="507" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="511" y="13">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="507" y="29" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="511" y="41">S_QUOTED_IDENTIFIER</text></a><rect x="675" y="22" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="679" y="34">FORMAT</text> + <rect x="729" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="733" y="34">JSON</text> + <rect x="829" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="833" y="34">NULL</text> + <rect x="829" y="50" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="833" y="62">ABSENT</text> + <rect x="901" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="905" y="34">ON</text> + <rect x="931" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="935" y="34">NULL</text> + <rect x="1031" y="22" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1035" y="34">WITH</text> + <rect x="1031" y="50" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1035" y="62">WITHOUT</text> + <rect x="1113" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1117" y="34">UNIQUE</text> + <rect x="1165" y="22" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1169" y="34">KEYS</text> + <rect x="43" y="197" width="90" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="209">JSON_ARRAYAGG</text> + <rect x="141" y="197" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="145" y="209">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="161" y="197" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="209">Expression</text></a><rect x="249" y="218" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="253" y="230">FORMAT</text> + <rect x="303" y="218" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="307" y="230">JSON</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="383" y="218" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="387" y="230">OrderByElements</text></a><rect x="541" y="218" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="545" y="230">NULL</text> + <rect x="541" y="246" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="545" y="258">ABSENT</text> + <rect x="613" y="218" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="617" y="230">ON</text> + <rect x="643" y="218" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="647" y="230">NULL</text> + <rect x="498" y="288" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="502" y="300">)</text> + <rect x="538" y="309" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="542" y="321">FILTER</text> + <rect x="584" y="309" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="588" y="321">(</text> + <rect x="604" y="309" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="608" y="321">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="654" y="309" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="658" y="321">Expression</text></a><rect x="722" y="309" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="726" y="321">)</text> + <rect x="527" y="367" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="379">OVER</text> + <rect x="569" y="367" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="573" y="379">(</text> + <rect x="609" y="388" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="613" y="400">PARTITION</text> + <rect x="675" y="388" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="679" y="400">BY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="723" y="388" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="727" y="400">ComplexExpressionList</text></a><rect x="723" y="416" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="727" y="428">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="743" y="416" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="747" y="428">ComplexExpressionList</text></a><rect x="865" y="416" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="869" y="428">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="945" y="388" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="949" y="400">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowelement" xlink:title="WindowElement" shape="rect"> + <rect x="1083" y="388" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="1087" y="400">WindowElement</text></a><rect x="1197" y="367" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1201" y="379">)</text> + <path class="line" d="m17 10 h2 m20 0 h4 m92 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h22 m-52 0 h20 m32 0 h20 m-72 0 q10 0 10 10 m52 0 q0 -10 10 -10 m-62 10 v1 m52 0 v-1 m-52 1 q0 10 10 10 m32 0 q10 0 10 -10 m-42 10 h4 m24 0 h4 m40 -21 h4 m54 0 h4 m0 0 h66 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m60 0 h4 m0 0 h60 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m48 0 h4 m0 0 h72 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m40 0 h4 m0 0 h80 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m90 0 h4 m0 0 h30 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m74 0 h4 m0 0 h46 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -168 h4 m10 0 h4 m0 0 h26 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -28 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -28 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m46 0 h4 m0 0 h4 m32 0 h4 m40 -21 h10 m0 0 h152 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v1 m182 0 v-1 m-182 1 q0 10 10 10 m162 0 q10 0 10 -10 m-152 10 h4 m32 0 h4 m0 0 h12 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m22 0 h4 m0 0 h4 m32 0 h4 m40 -21 h10 m0 0 h182 m-212 0 h20 m192 0 h20 m-232 0 q10 0 10 10 m212 0 q0 -10 10 -10 m-222 10 v1 m212 0 v-1 m-212 1 q0 10 10 10 m192 0 q10 0 10 -10 m-182 10 h4 m34 0 h4 m0 0 h20 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v8 m82 0 v-8 m-82 8 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m54 0 h4 m20 -28 h4 m44 0 h4 m0 0 h4 m30 0 h4 m-1180 -21 h20 m1180 0 h20 m-1220 0 q10 0 10 10 m1200 0 q0 -10 10 -10 m-1210 10 v176 m1200 0 v-176 m-1200 176 q0 10 10 10 m1180 0 q10 0 10 -10 m-1190 10 h4 m90 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m20 0 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m46 0 h4 m0 0 h4 m32 0 h4 m40 -21 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h152 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v1 m182 0 v-1 m-182 1 q0 10 10 10 m162 0 q10 0 10 -10 m-152 10 h4 m32 0 h4 m0 0 h12 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m22 0 h4 m0 0 h4 m32 0 h4 m20 -21 h520 m22 -196 l2 0 m2 0 l2 0 m2 0 l2 0 m-769 287 l2 0 m2 0 l2 0 m2 0 l2 0 m2 0 h4 m12 0 h4 m20 0 h10 m0 0 h194 m-224 0 h20 m204 0 h20 m-244 0 q10 0 10 10 m224 0 q0 -10 10 -10 m-234 10 v1 m224 0 v-1 m-224 1 q0 10 10 10 m204 0 q10 0 10 -10 m-214 10 h4 m38 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m42 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-279 58 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h680 m-710 0 h20 m690 0 h20 m-730 0 q10 0 10 10 m710 0 q0 -10 10 -10 m-720 10 v1 m710 0 v-1 m-710 1 q0 10 10 10 m690 0 q10 0 10 -10 m-700 10 h4 m34 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h286 m-316 0 h20 m296 0 h20 m-336 0 q10 0 10 10 m316 0 q0 -10 10 -10 m-326 10 v1 m316 0 v-1 m-316 1 q0 10 10 10 m296 0 q10 0 10 -10 m-306 10 h4 m58 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m114 0 h4 m0 0 h40 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m12 0 h4 m0 0 h4 m114 0 h4 m0 0 h4 m12 0 h4 m60 -49 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m86 0 h4 m20 -21 h4 m12 0 h4 m23 -21 h-3"/> + <polygon points="1243 355 1251 351 1251 359"/> + <polygon points="1243 355 1235 351 1235 359"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#jsonaggregatefunction" title="JsonAggregateFunction" shape="rect">JsonAggregateFunction</a></div> + <div>         ::= ( 'JSON_OBJECTAGG' '(' 'KEY'? ( <a href="#dt-zone" title="DT_ZONE" shape="rect">DT_ZONE</a> | <a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> | <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-hex" title="S_HEX" shape="rect">S_HEX</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ( ':' | 'VALUE' ) ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ( 'FORMAT' 'JSON' )? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? ( ( 'WITH' | 'WITHOUT' + ) 'UNIQUE' 'KEYS' )? | 'JSON_ARRAYAGG' '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ( 'FORMAT' 'JSON' )? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? ( ( 'NULL' | 'ABSENT' ) 'ON' 'NULL' )? ) ')' ( 'FILTER' '(' 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' )? ( 'OVER' '(' ( 'PARTITION' 'BY' ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' ) )? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? <a href="#windowelement" title="WindowElement" shape="rect">WindowElement</a>? ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IntervalExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="453" height="189"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">INTERVAL</text> + <rect x="103" y="22" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="34">-</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="161" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="13">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-double" xlink:title="S_DOUBLE" shape="rect"> + <rect x="161" y="29" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="41">S_DOUBLE</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="161" y="57" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="69">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="161" y="85" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="97">SimpleJdbcParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#jdbcnamedparameter" xlink:title="JdbcNamedParameter" shape="rect"> + <rect x="161" y="113" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="125">JdbcNamedParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="161" y="141" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="153">Function</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="161" y="169" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="181">Column</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="321" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="325" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="321" y="50" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="325" y="62">K_DATE_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m52 0 h4 m20 0 h10 m0 0 h8 m-38 0 h20 m18 0 h20 m-58 0 q10 0 10 10 m38 0 q0 -10 10 -10 m-48 10 v1 m38 0 v-1 m-38 1 q0 10 10 10 m18 0 q10 0 10 -10 m-28 10 h4 m10 0 h4 m40 -21 h4 m48 0 h4 m0 0 h64 m-140 0 h20 m120 0 h20 m-160 0 q10 0 10 10 m140 0 q0 -10 10 -10 m-150 10 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m60 0 h4 m0 0 h52 m-130 -10 v20 m140 0 v-20 m-140 20 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m90 0 h4 m0 0 h22 m-130 -10 v20 m140 0 v-20 m-140 20 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m108 0 h4 m0 0 h4 m-130 -10 v20 m140 0 v-20 m-140 20 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m112 0 h4 m-130 -10 v20 m140 0 v-20 m-140 20 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m48 0 h4 m0 0 h64 m-130 -10 v20 m140 0 v-20 m-140 20 v8 m140 0 v-8 m-140 8 q0 10 10 10 m120 0 q10 0 10 -10 m-130 10 h4 m46 0 h4 m0 0 h66 m40 -168 h10 m0 0 h86 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v1 m116 0 v-1 m-116 1 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m74 0 h4 m0 0 h14 m-106 -10 v20 m116 0 v-20 m-116 20 v8 m116 0 v-8 m-116 8 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m88 0 h4 m23 -49 h-3"/> + <polygon points="443 10 451 6 451 14"/> + <polygon points="443 10 435 6 435 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#intervalexpression" title="IntervalExpression" shape="rect">IntervalExpression</a></div> + <div>         ::= 'INTERVAL' '-'? ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> | <a href="#jdbcnamedparameter" title="JdbcNamedParameter" shape="rect">JdbcNamedParameter</a> | <a href="#function" title="Function" shape="rect">Function</a> | <a href="#column" title="Column" shape="rect">Column</a> ) ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + IntervalExpressionWithoutInterval +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="135" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="23" y="1" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">K_DATE_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m88 0 h4 m3 0 h-3"/> + <polygon points="125 10 133 6 133 14"/> + <polygon points="125 10 117 6 117 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#intervalexpressionwithoutinterval" title="IntervalExpressionWithoutInterval" shape="rect">IntervalExpressionWithoutInterval</a></div> + <div>         ::= <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + KeepExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="379" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">KEEP</text> + <rect x="61" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="65" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="81" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="85" y="13">S_IDENTIFIER</text></a><rect x="183" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="13">FIRST</text> + <rect x="183" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="41">LAST</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="245" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="249" y="13">OrderByElements</text></a><rect x="343" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="347" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m30 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m74 0 h4 m20 0 h4 m34 0 h4 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m30 0 h4 m0 0 h4 m20 -28 h4 m90 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="369 10 377 6 377 14"/> + <polygon points="369 10 361 6 361 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#keepexpression" title="KeepExpression" shape="rect">KeepExpression</a></div> + <div>         ::= 'KEEP' '(' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ( 'FIRST' | 'LAST' ) <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + windowFun +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="623" height="210"> + <polygon points="11 10 3 6 3 14"/> + <polygon points="19 10 11 6 11 14"/> + <rect x="65" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="69" y="34">IGNORE</text> + <rect x="117" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="34">NULLS</text> + <rect x="183" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="13">OVER</text> + <rect x="45" y="50" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="49" y="62">WITHIN</text> + <rect x="97" y="50" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="62">GROUP</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="37" y="92" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="41" y="104">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowdefinition" xlink:title="windowDefinition" shape="rect"> + <rect x="37" y="120" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="41" y="132">windowDefinition</text></a><rect x="149" y="141" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="153" y="153">OVER</text> + <rect x="191" y="141" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="153">(</text> + <rect x="231" y="162" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="235" y="174">PARTITION</text> + <rect x="297" y="162" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="301" y="174">BY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="345" y="162" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="349" y="174">ComplexExpressionList</text></a><rect x="345" y="190" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="349" y="202">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="365" y="190" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="369" y="202">ComplexExpressionList</text></a><rect x="487" y="190" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="491" y="202">)</text> + <rect x="547" y="141" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="551" y="153">)</text> + <path class="line" d="m19 10 h2 m40 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m44 0 h4 m0 0 h4 m38 0 h4 m20 -21 h4 m34 0 h4 m-200 0 h20 m180 0 h20 m-220 0 q10 0 10 10 m200 0 q0 -10 10 -10 m-210 10 v29 m200 0 v-29 m-200 29 q0 10 10 10 m180 0 q10 0 10 -10 m-190 10 h4 m44 0 h4 m0 0 h4 m42 0 h4 m0 0 h78 m22 -49 l2 0 m2 0 l2 0 m2 0 l2 0 m-252 91 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m80 0 h4 m0 0 h462 m-570 0 h20 m550 0 h20 m-590 0 q10 0 10 10 m570 0 q0 -10 10 -10 m-580 10 v8 m570 0 v-8 m-570 8 q0 10 10 10 m550 0 q10 0 10 -10 m-560 10 h4 m84 0 h4 m20 0 h10 m0 0 h408 m-438 0 h20 m418 0 h20 m-458 0 q10 0 10 10 m438 0 q0 -10 10 -10 m-448 10 v1 m438 0 v-1 m-438 1 q0 10 10 10 m418 0 q10 0 10 -10 m-428 10 h4 m34 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h286 m-316 0 h20 m296 0 h20 m-336 0 q10 0 10 10 m316 0 q0 -10 10 -10 m-326 10 v1 m316 0 v-1 m-316 1 q0 10 10 10 m296 0 q10 0 10 -10 m-306 10 h4 m58 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m114 0 h4 m0 0 h40 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m12 0 h4 m0 0 h4 m114 0 h4 m0 0 h4 m12 0 h4 m40 -49 h4 m12 0 h4 m43 -49 h-3"/> + <polygon points="613 101 621 97 621 105"/> + <polygon points="613 101 605 97 605 105"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#windowfun" title="windowFun" shape="rect">windowFun</a></div> + <div>         ::= ( ( 'IGNORE' 'NULLS' )? 'OVER' | 'WITHIN' 'GROUP' ) ( <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> | <a href="#windowdefinition" title="windowDefinition" shape="rect">windowDefinition</a> ( 'OVER' '(' ( 'PARTITION' 'BY' ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' ) )? ')' )? )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#analyticexpression" title="analyticexpression">analyticexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + windowDefinition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="687" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">(</text> + <rect x="63" y="22" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="34">PARTITION</text> + <rect x="129" y="22" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="133" y="34">BY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="177" y="22" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="181" y="34">ComplexExpressionList</text></a><rect x="177" y="50" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="181" y="62">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="197" y="50" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="201" y="62">ComplexExpressionList</text></a><rect x="319" y="50" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="323" y="62">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="399" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="403" y="34">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowelement" xlink:title="WindowElement" shape="rect"> + <rect x="537" y="22" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="541" y="34">WindowElement</text></a><rect x="651" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="655" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h286 m-316 0 h20 m296 0 h20 m-336 0 q10 0 10 10 m316 0 q0 -10 10 -10 m-326 10 v1 m316 0 v-1 m-316 1 q0 10 10 10 m296 0 q10 0 10 -10 m-306 10 h4 m58 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m114 0 h4 m0 0 h40 m-182 0 h20 m162 0 h20 m-202 0 q10 0 10 10 m182 0 q0 -10 10 -10 m-192 10 v8 m182 0 v-8 m-182 8 q0 10 10 10 m162 0 q10 0 10 -10 m-172 10 h4 m12 0 h4 m0 0 h4 m114 0 h4 m0 0 h4 m12 0 h4 m60 -49 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h84 m-114 0 h20 m94 0 h20 m-134 0 q10 0 10 10 m114 0 q0 -10 10 -10 m-124 10 v1 m114 0 v-1 m-114 1 q0 10 10 10 m94 0 q10 0 10 -10 m-104 10 h4 m86 0 h4 m20 -21 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="677 10 685 6 685 14"/> + <polygon points="677 10 669 6 669 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#windowdefinition" title="windowDefinition" shape="rect">windowDefinition</a></div> + <div>         ::= '(' ( 'PARTITION' 'BY' ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | '(' <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> ')' ) )? <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? <a href="#windowelement" title="WindowElement" shape="rect">WindowElement</a>? ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#windowfun" title="windowfun">windowfun</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AnalyticExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="393" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">FILTER</text> + <rect x="89" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="13">(</text> + <rect x="109" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="113" y="13">WHERE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="159" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="163" y="13">Expression</text></a><rect x="227" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="231" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowfun" xlink:title="windowFun" shape="rect"> + <rect x="267" y="22" width="62" height="18" class="nonterminal"/> + <text class="nonterminal" x="271" y="34">windowFun</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowfun" xlink:title="windowFun" shape="rect"> + <rect x="43" y="50" width="62" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="62">windowFun</text></a><path class="line" d="m17 10 h2 m20 0 h4 m38 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m42 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h60 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v1 m90 0 v-1 m-90 1 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m62 0 h4 m-314 -21 h20 m314 0 h20 m-354 0 q10 0 10 10 m334 0 q0 -10 10 -10 m-344 10 v29 m334 0 v-29 m-334 29 q0 10 10 10 m314 0 q10 0 10 -10 m-324 10 h4 m62 0 h4 m0 0 h244 m23 -49 h-3"/> + <polygon points="383 10 391 6 391 14"/> + <polygon points="383 10 375 6 375 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#analyticexpression" title="AnalyticExpression" shape="rect">AnalyticExpression</a></div> + <div>         ::= 'FILTER' '(' 'WHERE' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' <a href="#windowfun" title="windowFun" shape="rect">windowFun</a>?</div> + <div>           | <a href="#windowfun" title="windowFun" shape="rect">windowFun</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WindowElement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="427" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ROWS</text> + <rect x="43" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">RANGE</text> + <rect x="131" y="22" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="34">BETWEEN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowoffset" xlink:title="WindowOffset" shape="rect"> + <rect x="191" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="195" y="34">WindowOffset</text></a><rect x="273" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="277" y="34">AND</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#windowoffset" xlink:title="WindowOffset" shape="rect"> + <rect x="329" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="333" y="13">WindowOffset</text></a><path class="line" d="m17 10 h2 m20 0 h4 m38 0 h4 m0 0 h2 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m40 -28 h10 m0 0 h168 m-198 0 h20 m178 0 h20 m-218 0 q10 0 10 10 m198 0 q0 -10 10 -10 m-208 10 v1 m198 0 v-1 m-198 1 q0 10 10 10 m178 0 q10 0 10 -10 m-188 10 h4 m52 0 h4 m0 0 h4 m74 0 h4 m0 0 h4 m28 0 h4 m20 -21 h4 m74 0 h4 m3 0 h-3"/> + <polygon points="417 10 425 6 425 14"/> + <polygon points="417 10 409 6 409 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#windowelement" title="WindowElement" shape="rect">WindowElement</a></div> + <div>         ::= ( 'ROWS' | 'RANGE' ) ( 'BETWEEN' <a href="#windowoffset" title="WindowOffset" shape="rect">WindowOffset</a> 'AND' )? <a href="#windowoffset" title="WindowOffset" shape="rect">WindowOffset</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#windowdefinition" title="windowdefinition">windowdefinition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WindowOffset +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="331" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="63" y="1" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">UNBOUNDED</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="63" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="41">SimpleExpression</text></a><rect x="201" y="1" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="13">PRECEDING</text> + <rect x="201" y="29" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="205" y="41">FOLLOWING</text> + <rect x="43" y="57" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">CURRENT</text> + <rect x="101" y="57" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="105" y="69">ROW</text> + <path class="line" d="m17 10 h2 m40 0 h4 m68 0 h4 m0 0 h22 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -28 h4 m60 0 h4 m0 0 h6 m-94 0 h20 m74 0 h20 m-114 0 q10 0 10 10 m94 0 q0 -10 10 -10 m-104 10 v8 m94 0 v-8 m-94 8 q0 10 10 10 m74 0 q10 0 10 -10 m-84 10 h4 m66 0 h4 m-252 -28 h20 m252 0 h20 m-292 0 q10 0 10 10 m272 0 q0 -10 10 -10 m-282 10 v36 m272 0 v-36 m-272 36 q0 10 10 10 m252 0 q10 0 10 -10 m-262 10 h4 m50 0 h4 m0 0 h4 m32 0 h4 m0 0 h154 m23 -56 h-3"/> + <polygon points="321 10 329 6 329 14"/> + <polygon points="321 10 313 6 313 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#windowoffset" title="WindowOffset" shape="rect">WindowOffset</a></div> + <div>         ::= ( 'UNBOUNDED' | <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ) ( 'PRECEDING' | 'FOLLOWING' )</div> + <div>           | 'CURRENT' 'ROW'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#windowelement" title="windowelement">windowelement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ExtractExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="415" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">EXTRACT</text> + <rect x="79" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="83" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="119" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="13">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="119" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="41">S_CHAR_LITERAL</text></a><rect x="237" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="241" y="13">FROM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="281" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="285" y="13">SimpleExpression</text></a><rect x="379" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="383" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m80 0 h4 m0 0 h10 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m20 -28 h4 m36 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="405 10 413 6 413 14"/> + <polygon points="405 10 397 6 397 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#extractexpression" title="ExtractExpression" shape="rect">ExtractExpression</a></div> + <div>         ::= 'EXTRACT' '(' ( <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> ) 'FROM' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CastExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="375" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CAST</text> + <rect x="63" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="83" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="13">SimpleExpression</text></a><rect x="181" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="185" y="13">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rowconstructor" xlink:title="RowConstructor" shape="rect"> + <rect x="229" y="1" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="233" y="13">RowConstructor</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="229" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="233" y="41">ColDataType</text></a><rect x="339" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="343" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m32 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m82 0 h4 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m68 0 h4 m0 0 h14 m20 -28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="365 10 373 6 373 14"/> + <polygon points="365 10 357 6 357 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#castexpression" title="CastExpression" shape="rect">CastExpression</a></div> + <div>         ::= 'CAST' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> 'AS' ( <a href="#rowconstructor" title="RowConstructor" shape="rect">RowConstructor</a> | <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + TryCastExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="397" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">TRY_CAST</text> + <rect x="85" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="105" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="109" y="13">SimpleExpression</text></a><rect x="203" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="207" y="13">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rowconstructor" xlink:title="RowConstructor" shape="rect"> + <rect x="251" y="1" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="255" y="13">RowConstructor</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="251" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="255" y="41">ColDataType</text></a><rect x="361" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m54 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m82 0 h4 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m68 0 h4 m0 0 h14 m20 -28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="387 10 395 6 395 14"/> + <polygon points="387 10 379 6 379 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#trycastexpression" title="TryCastExpression" shape="rect">TryCastExpression</a></div> + <div>         ::= 'TRY_CAST' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> 'AS' ( <a href="#rowconstructor" title="RowConstructor" shape="rect">RowConstructor</a> | <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SafeCastExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="403" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SAFE_CAST</text> + <rect x="91" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="111" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="13">SimpleExpression</text></a><rect x="209" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="213" y="13">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rowconstructor" xlink:title="RowConstructor" shape="rect"> + <rect x="257" y="1" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="13">RowConstructor</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="257" y="29" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="41">ColDataType</text></a><rect x="367" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="371" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m20 0 h4 m20 0 h4 m82 0 h4 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m68 0 h4 m0 0 h14 m20 -28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="393 10 401 6 401 14"/> + <polygon points="393 10 385 6 385 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#safecastexpression" title="SafeCastExpression" shape="rect">SafeCastExpression</a></div> + <div>         ::= 'SAFE_CAST' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> 'AS' ( <a href="#rowconstructor" title="RowConstructor" shape="rect">RowConstructor</a> | <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CaseWhenExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="761" height="103"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="23" y="13" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="25">CASE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="83" y="34" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="46">Expression</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whenthensearchcondition" xlink:title="WhenThenSearchCondition" shape="rect"> + <rect x="191" y="13" width="136" height="18" class="nonterminal"/> + <text class="nonterminal" x="195" y="25">WhenThenSearchCondition</text></a><rect x="375" y="34" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="46">ELSE</text> + <rect x="451" y="55" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="455" y="67">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#casewhenexpression" xlink:title="CaseWhenExpression" shape="rect"> + <rect x="491" y="34" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="495" y="46">CaseWhenExpression</text></a><rect x="631" y="55" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="635" y="67">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="431" y="83" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="435" y="95">Expression</text></a><rect x="711" y="13" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="715" y="25">END</text> + <path class="line" d="m17 22 h2 m0 0 h4 m32 0 h4 m20 0 h10 m0 0 h58 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v1 m88 0 v-1 m-88 1 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m40 -21 h4 m136 0 h4 m-164 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m144 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-144 0 h10 m0 0 h134 m40 21 h10 m0 0 h306 m-336 0 h20 m316 0 h20 m-356 0 q10 0 10 10 m336 0 q0 -10 10 -10 m-346 10 v1 m336 0 v-1 m-336 1 q0 10 10 10 m316 0 q10 0 10 -10 m-326 10 h4 m28 0 h4 m40 0 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m20 -21 h4 m112 0 h4 m20 0 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m-240 -21 h20 m240 0 h20 m-280 0 q10 0 10 10 m260 0 q0 -10 10 -10 m-270 10 v29 m260 0 v-29 m-260 29 q0 10 10 10 m240 0 q10 0 10 -10 m-250 10 h4 m60 0 h4 m0 0 h172 m40 -70 h4 m26 0 h4 m3 0 h-3"/> + <polygon points="751 22 759 18 759 26"/> + <polygon points="751 22 743 18 743 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#casewhenexpression" title="CaseWhenExpression" shape="rect">CaseWhenExpression</a></div> + <div>         ::= 'CASE' <a href="#expression" title="Expression" shape="rect">Expression</a>? <a href="#whenthensearchcondition" title="WhenThenSearchCondition" shape="rect">WhenThenSearchCondition</a>+ ( 'ELSE' ( '('? <a href="#casewhenexpression" title="CaseWhenExpression" shape="rect">CaseWhenExpression</a> ')'? | <a href="#expression" title="Expression" shape="rect">Expression</a> ) )? 'END'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#casewhenexpression" title="casewhenexpression">casewhenexpression</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#whenthensearchcondition" title="whenthensearchcondition">whenthensearchcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WhenThenSearchCondition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="473" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">WHEN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="69" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="73" y="13">Expression</text></a><rect x="137" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="141" y="13">THEN</text> + <rect x="217" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="34">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#casewhenexpression" xlink:title="CaseWhenExpression" shape="rect"> + <rect x="257" y="1" width="112" height="18" class="nonterminal"/> + <text class="nonterminal" x="261" y="13">CaseWhenExpression</text></a><rect x="397" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="401" y="34">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="197" y="50" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="201" y="62">Expression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m38 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m32 0 h4 m40 0 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m20 -21 h4 m112 0 h4 m20 0 h10 m0 0 h10 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v1 m40 0 v-1 m-40 1 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m-240 -21 h20 m240 0 h20 m-280 0 q10 0 10 10 m260 0 q0 -10 10 -10 m-270 10 v29 m260 0 v-29 m-260 29 q0 10 10 10 m240 0 q10 0 10 -10 m-250 10 h4 m60 0 h4 m0 0 h172 m23 -49 h-3"/> + <polygon points="463 10 471 6 471 14"/> + <polygon points="463 10 455 6 455 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#whenthensearchcondition" title="WhenThenSearchCondition" shape="rect">WhenThenSearchCondition</a></div> + <div>         ::= 'WHEN' <a href="#expression" title="Expression" shape="rect">Expression</a> 'THEN' ( '('? <a href="#casewhenexpression" title="CaseWhenExpression" shape="rect">CaseWhenExpression</a> ')'? | <a href="#expression" title="Expression" shape="rect">Expression</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#casewhenexpression" title="casewhenexpression">casewhenexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RowConstructor +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="293" height="70"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="50" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="62">ROW</text> + <rect x="103" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columndefinition" xlink:title="ColumnDefinition" shape="rect"> + <rect x="143" y="29" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="147" y="41">ColumnDefinition</text></a><rect x="143" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="147" y="13">,</text> + <rect x="257" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="261" y="41">)</text> + <path class="line" d="m17 38 h2 m20 0 h10 m0 0 h30 m-60 0 h20 m40 0 h20 m-80 0 q10 0 10 10 m60 0 q0 -10 10 -10 m-70 10 v1 m60 0 v-1 m-60 1 q0 10 10 10 m40 0 q10 0 10 -10 m-50 10 h4 m32 0 h4 m20 -21 h4 m12 0 h4 m20 0 h4 m86 0 h4 m-114 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m94 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-94 0 h4 m8 0 h4 m0 0 h78 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="283 38 291 34 291 42"/> + <polygon points="283 38 275 34 275 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#rowconstructor" title="RowConstructor" shape="rect">RowConstructor</a></div> + <div>         ::= 'ROW'? '(' <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> ( ',' <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#castexpression" title="castexpression">castexpression</a></li><li><a href="#comparisonitem" title="comparisonitem">comparisonitem</a></li><li><a href="#safecastexpression" title="safecastexpression">safecastexpression</a></li><li><a href="#trycastexpression" title="trycastexpression">trycastexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + VariableExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="233" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#uservariable" xlink:title="UserVariable" shape="rect"> + <rect x="23" y="1" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">UserVariable</text></a><rect x="97" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="13">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="119" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="13">SimpleExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m66 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="223 10 231 6 231 14"/> + <polygon points="223 10 215 6 215 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#variableexpression" title="VariableExpression" shape="rect">VariableExpression</a></div> + <div>         ::= <a href="#uservariable" title="UserVariable" shape="rect">UserVariable</a> '=' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#execute" title="execute">execute</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Execute +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="429" height="117"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="43" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">EXEC</text> + <rect x="43" y="57" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">EXECUTE</text> + <rect x="43" y="85" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">CALL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="119" y="29" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="123" y="41">RelObjectNameList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#variableexpression" xlink:title="VariableExpression" shape="rect"> + <rect x="261" y="29" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="265" y="41">VariableExpression</text></a><rect x="261" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="265" y="13">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="241" y="57" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="245" y="69">SimpleExpressionList</text></a><rect x="241" y="85" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="97">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="261" y="85" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="265" y="97">SimpleExpressionList</text></a><rect x="373" y="85" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="377" y="97">)</text> + <path class="line" d="m17 38 h2 m20 0 h4 m30 0 h4 m0 0 h18 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m-66 -10 v20 m76 0 v-20 m-76 20 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m30 0 h4 m0 0 h18 m20 -56 h4 m94 0 h4 m40 0 h4 m94 0 h4 m-122 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m102 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-102 0 h4 m8 0 h4 m0 0 h86 m20 28 h10 m-172 0 h20 m152 0 h20 m-192 0 q10 0 10 10 m172 0 q0 -10 10 -10 m-182 10 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m104 0 h4 m0 0 h40 m-162 -10 v20 m172 0 v-20 m-172 20 v8 m172 0 v-8 m-172 8 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m12 0 h4 m0 0 h4 m104 0 h4 m0 0 h4 m12 0 h4 m-162 -10 v20 m172 0 v-20 m-172 20 v1 m172 0 v-1 m-172 1 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h10 m0 0 h142 m23 -77 h-3"/> + <polygon points="419 38 427 34 427 42"/> + <polygon points="419 38 411 34 411 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#execute" title="Execute" shape="rect">Execute</a>  ::= ( 'EXEC' | 'EXECUTE' | 'CALL' ) <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a> ( <a href="#variableexpression" title="VariableExpression" shape="rect">VariableExpression</a> ( ',' <a href="#variableexpression" title="VariableExpression" shape="rect">VariableExpression</a> )* | <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> | '(' <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + FullTextSearch +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="789" height="196"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">MATCH</text> + <rect x="71" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="75" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="111" y="29" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="41">Column</text></a><rect x="111" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="115" y="13">,</text> + <rect x="185" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="41">)</text> + <rect x="205" y="29" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="209" y="41">AGAINST</text> + <rect x="261" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="265" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="301" y="29" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="305" y="41">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcparameter" xlink:title="SimpleJdbcParameter" shape="rect"> + <rect x="301" y="57" width="108" height="18" class="nonterminal"/> + <text class="nonterminal" x="305" y="69">SimpleJdbcParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simplejdbcnamedparameter" xlink:title="SimpleJdbcNamedParameter" shape="rect"> + <rect x="301" y="85" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="305" y="97">SimpleJdbcNamedParameter</text></a><rect x="491" y="50" width="142" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="62">IN NATURAL LANGUAGE MODE</text> + <rect x="491" y="78" width="260" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="90">IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION</text> + <rect x="491" y="106" width="94" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="118">IN BOOLEAN MODE</text> + <rect x="491" y="134" width="124" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="146">WITH QUERY EXPANSION</text> + <rect x="753" y="176" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="757" y="188">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m40 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m46 0 h4 m-74 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m54 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-54 0 h4 m8 0 h4 m0 0 h38 m20 28 h4 m12 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m90 0 h4 m0 0 h52 m-170 0 h20 m150 0 h20 m-190 0 q10 0 10 10 m170 0 q0 -10 10 -10 m-180 10 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m108 0 h4 m0 0 h34 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m142 0 h4 m40 -56 h10 m0 0 h258 m-288 0 h20 m268 0 h20 m-308 0 q10 0 10 10 m288 0 q0 -10 10 -10 m-298 10 v1 m288 0 v-1 m-288 1 q0 10 10 10 m268 0 q10 0 10 -10 m-278 10 h4 m142 0 h4 m0 0 h118 m-278 -10 v20 m288 0 v-20 m-288 20 v8 m288 0 v-8 m-288 8 q0 10 10 10 m268 0 q10 0 10 -10 m-278 10 h4 m260 0 h4 m-278 -10 v20 m288 0 v-20 m-288 20 v8 m288 0 v-8 m-288 8 q0 10 10 10 m268 0 q10 0 10 -10 m-278 10 h4 m94 0 h4 m0 0 h166 m-278 -10 v20 m288 0 v-20 m-288 20 v8 m288 0 v-8 m-288 8 q0 10 10 10 m268 0 q10 0 10 -10 m-278 10 h4 m124 0 h4 m0 0 h136 m22 -105 l2 0 m2 0 l2 0 m2 0 l2 0 m-50 147 l2 0 m2 0 l2 0 m2 0 l2 0 m2 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="779 185 787 181 787 189"/> + <polygon points="779 185 771 181 771 189"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#fulltextsearch" title="FullTextSearch" shape="rect">FullTextSearch</a></div> + <div>         ::= 'MATCH' '(' <a href="#column" title="Column" shape="rect">Column</a> ( ',' <a href="#column" title="Column" shape="rect">Column</a> )* ')' 'AGAINST' '(' ( <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#simplejdbcparameter" title="SimpleJdbcParameter" shape="rect">SimpleJdbcParameter</a> | <a href="#simplejdbcnamedparameter" title="SimpleJdbcNamedParameter" shape="rect">SimpleJdbcNamedParameter</a> ) ( 'IN NATURAL LANGUAGE MODE' | 'IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION' + | 'IN BOOLEAN MODE' | 'WITH QUERY EXPANSION' )? ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Function +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="301" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">{</text> + <rect x="65" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="69" y="13">FN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#internalfunction" xlink:title="InternalFunction" shape="rect"> + <rect x="93" y="1" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="97" y="13">InternalFunction</text></a><rect x="183" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="13">}</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#specialstringfunctionwithnamedparameters" xlink:title="SpecialStringFunctionWithNamedParameters" shape="rect"> + <rect x="43" y="29" width="214" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="41">SpecialStringFunctionWithNamedParameters</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#internalfunction" xlink:title="InternalFunction" shape="rect"> + <rect x="43" y="57" width="82" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="69">InternalFunction</text></a><path class="line" d="m17 10 h2 m20 0 h4 m14 0 h4 m0 0 h4 m20 0 h4 m0 0 h4 m82 0 h4 m0 0 h4 m14 0 h4 m0 0 h60 m-242 0 h20 m222 0 h20 m-262 0 q10 0 10 10 m242 0 q0 -10 10 -10 m-252 10 v8 m242 0 v-8 m-242 8 q0 10 10 10 m222 0 q10 0 10 -10 m-232 10 h4 m214 0 h4 m-232 -10 v20 m242 0 v-20 m-242 20 v8 m242 0 v-8 m-242 8 q0 10 10 10 m222 0 q10 0 10 -10 m-232 10 h4 m82 0 h4 m0 0 h132 m23 -56 h-3"/> + <polygon points="291 10 299 6 299 14"/> + <polygon points="291 10 283 6 283 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#function" title="Function" shape="rect">Function</a> ::= '{' 'FN' <a href="#internalfunction" title="InternalFunction" shape="rect">InternalFunction</a> '}'</div> + <div>           | <a href="#specialstringfunctionwithnamedparameters" title="SpecialStringFunctionWithNamedParameters" shape="rect">SpecialStringFunctionWithNamedParameters</a></div> + <div>           | <a href="#internalfunction" title="InternalFunction" shape="rect">InternalFunction</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#functionitem" title="functionitem">functionitem</a></li><li><a href="#inexpression" title="inexpression">inexpression</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#tablefunction" title="tablefunction">tablefunction</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SpecialStringFunctionWithNamedParameters +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="425" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-string-function-name" xlink:title="K_STRING_FUNCTION_NAME" shape="rect"> + <rect x="23" y="1" width="144" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">K_STRING_FUNCTION_NAME</text></a><rect x="175" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="179" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#namedexpressionlist1" xlink:title="NamedExpressionList1" shape="rect"> + <rect x="215" y="1" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="219" y="13">NamedExpressionList1</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#namedexpressionlistexprfirst" xlink:title="NamedExpressionListExprFirst" shape="rect"> + <rect x="215" y="29" width="146" height="18" class="nonterminal"/> + <text class="nonterminal" x="219" y="41">NamedExpressionListExprFirst</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="215" y="57" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="219" y="69">ComplexExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="215" y="85" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="219" y="97">SimpleExpressionList</text></a><rect x="389" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="393" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m144 0 h4 m0 0 h4 m12 0 h4 m20 0 h4 m114 0 h4 m0 0 h32 m-174 0 h20 m154 0 h20 m-194 0 q10 0 10 10 m174 0 q0 -10 10 -10 m-184 10 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m146 0 h4 m-164 -10 v20 m174 0 v-20 m-174 20 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m114 0 h4 m0 0 h32 m-164 -10 v20 m174 0 v-20 m-174 20 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m104 0 h4 m0 0 h42 m20 -84 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="415 10 423 6 423 14"/> + <polygon points="415 10 407 6 407 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#specialstringfunctionwithnamedparameters" title="SpecialStringFunctionWithNamedParameters" shape="rect">SpecialStringFunctionWithNamedParameters</a></div> + <div>         ::= <a href="#k-string-function-name" title="K_STRING_FUNCTION_NAME" shape="rect">K_STRING_FUNCTION_NAME</a> '(' ( <a href="#namedexpressionlist1" title="NamedExpressionList1" shape="rect">NamedExpressionList1</a> | <a href="#namedexpressionlistexprfirst" title="NamedExpressionListExprFirst" shape="rect">NamedExpressionListExprFirst</a> | <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ) ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#function" title="function">function</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + InternalFunction +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="791" height="240"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><rect x="125" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="13">(</text> + <rect x="185" y="43" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="55">DISTINCT</text> + <rect x="185" y="71" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="83">ALL</text> + <rect x="185" y="99" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="189" y="111">UNIQUE</text> + <rect x="283" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="287" y="34">*</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alltablecolumns" xlink:title="AllTableColumns" shape="rect"> + <rect x="283" y="50" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="287" y="62">AllTableColumns</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#complexexpressionlist" xlink:title="ComplexExpressionList" shape="rect"> + <rect x="303" y="78" width="114" height="18" class="nonterminal"/> + <text class="nonterminal" x="307" y="90">ComplexExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="303" y="106" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="307" y="118">SimpleExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="465" y="99" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="469" y="111">OrderByElements</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#subselect" xlink:title="SubSelect" shape="rect"> + <rect x="283" y="134" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="287" y="146">SubSelect</text></a><rect x="643" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="647" y="34">IGNORE</text> + <rect x="695" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="699" y="34">NULLS</text> + <rect x="761" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="765" y="13">)</text> + <rect x="479" y="192" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="483" y="204">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="515" y="192" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="519" y="204">Function</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="515" y="220" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="519" y="232">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#keepexpression" xlink:title="KeepExpression" shape="rect"> + <rect x="663" y="192" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="667" y="204">KeepExpression</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h428 m-458 0 h20 m438 0 h20 m-478 0 q10 0 10 10 m458 0 q0 -10 10 -10 m-468 10 v1 m458 0 v-1 m-458 1 q0 10 10 10 m438 0 q10 0 10 -10 m-428 10 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m24 0 h4 m0 0 h26 m-68 -10 v20 m78 0 v-20 m-78 20 v8 m78 0 v-8 m-78 8 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m44 0 h4 m0 0 h6 m40 -77 h4 m14 0 h4 m0 0 h278 m-320 0 h20 m300 0 h20 m-340 0 q10 0 10 10 m320 0 q0 -10 10 -10 m-330 10 v8 m320 0 v-8 m-320 8 q0 10 10 10 m300 0 q10 0 10 -10 m-310 10 h4 m84 0 h4 m0 0 h208 m-310 -10 v20 m320 0 v-20 m-320 20 v8 m320 0 v-8 m-320 8 q0 10 10 10 m300 0 q10 0 10 -10 m-290 10 h4 m114 0 h4 m-142 0 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v8 m142 0 v-8 m-142 8 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h4 m104 0 h4 m0 0 h10 m40 -28 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m-290 -31 v20 m320 0 v-20 m-320 20 v36 m320 0 v-36 m-320 36 q0 10 10 10 m300 0 q10 0 10 -10 m-310 10 h4 m54 0 h4 m0 0 h238 m60 -133 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m44 0 h4 m0 0 h4 m38 0 h4 m20 -21 h4 m12 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-346 170 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h134 m-164 0 h20 m144 0 h20 m-184 0 q10 0 10 10 m164 0 q0 -10 10 -10 m-174 10 v1 m164 0 v-1 m-164 1 q0 10 10 10 m144 0 q10 0 10 -10 m-154 10 h4 m8 0 h4 m20 0 h4 m48 0 h4 m0 0 h32 m-108 0 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v8 m108 0 v-8 m-108 8 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m80 0 h4 m60 -49 h10 m0 0 h82 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v1 m112 0 v-1 m-112 1 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m84 0 h4 m23 -21 h-3"/> + <polygon points="781 180 789 176 789 184"/> + <polygon points="781 180 773 176 773 184"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#internalfunction" title="InternalFunction" shape="rect">InternalFunction</a></div> + <div>         ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a> '(' ( ( 'DISTINCT' | 'ALL' | 'UNIQUE' )? ( '*' | <a href="#alltablecolumns" title="AllTableColumns" shape="rect">AllTableColumns</a> | ( <a href="#complexexpressionlist" title="ComplexExpressionList" shape="rect">ComplexExpressionList</a> | <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> ) <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? | <a href="#subselect" title="SubSelect" shape="rect">SubSelect</a> ) )? ( 'IGNORE' 'NULLS' )? ')' ( '.' ( <a href="#function" title="Function" shape="rect">Function</a> | <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ) )? <a href="#keepexpression" title="KeepExpression" shape="rect">KeepExpression</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#function" title="function">function</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + XMLSerializeExpr +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="691" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="74" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">XMLSERIALIZE</text> + <rect x="105" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="109" y="13">(</text> + <rect x="125" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="13">XMLAGG</text> + <rect x="179" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="183" y="13">(</text> + <rect x="199" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="203" y="13">XMLTEXT</text> + <rect x="255" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="259" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpression" xlink:title="SimpleExpression" shape="rect"> + <rect x="275" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="279" y="13">SimpleExpression</text></a><rect x="373" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="377" y="13">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="413" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="417" y="34">OrderByElements</text></a><rect x="531" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="535" y="13">)</text> + <rect x="551" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="555" y="13">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="579" y="1" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="583" y="13">ColDataType</text></a><rect x="655" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="659" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m74 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m46 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m90 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m20 -21 h4 m12 0 h4 m0 0 h4 m20 0 h4 m0 0 h4 m68 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="681 10 689 6 689 14"/> + <polygon points="681 10 673 6 673 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#xmlserializeexpr" title="XMLSerializeExpr" shape="rect">XMLSerializeExpr</a></div> + <div>         ::= 'XMLSERIALIZE' '(' 'XMLAGG' '(' 'XMLTEXT' '(' <a href="#simpleexpression" title="SimpleExpression" shape="rect">SimpleExpression</a> ')' <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? ')' 'AS' <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + MySQLGroupConcat +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="731" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="86" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">GROUP_CONCAT</text> + <rect x="117" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="13">(</text> + <rect x="157" y="22" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="34">DISTINCT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlist" xlink:title="SimpleExpressionList" shape="rect"> + <rect x="235" y="1" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="239" y="13">SimpleExpressionList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#orderbyelements" xlink:title="OrderByElements" shape="rect"> + <rect x="367" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="371" y="34">OrderByElements</text></a><rect x="505" y="22" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="509" y="34">SEPARATOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="577" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="581" y="34">S_CHAR_LITERAL</text></a><rect x="695" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="699" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m86 0 h4 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -21 h4 m104 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m40 -21 h10 m0 0 h160 m-190 0 h20 m170 0 h20 m-210 0 q10 0 10 10 m190 0 q0 -10 10 -10 m-200 10 v1 m190 0 v-1 m-190 1 q0 10 10 10 m170 0 q10 0 10 -10 m-180 10 h4 m64 0 h4 m0 0 h4 m90 0 h4 m20 -21 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="721 10 729 6 729 14"/> + <polygon points="721 10 713 6 713 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#mysqlgroupconcat" title="MySQLGroupConcat" shape="rect">MySQLGroupConcat</a></div> + <div>         ::= 'GROUP_CONCAT' '(' 'DISTINCT'? <a href="#simpleexpressionlist" title="SimpleExpressionList" shape="rect">SimpleExpressionList</a> <a href="#orderbyelements" title="OrderByElements" shape="rect">OrderByElements</a>? ( 'SEPARATOR' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> )? ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ValueListExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="271" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#simpleexpressionlistatleasttwoitems" xlink:title="SimpleExpressionListAtLeastTwoItems" shape="rect"> + <rect x="43" y="1" width="184" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">SimpleExpressionListAtLeastTwoItems</text></a><rect x="235" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="239" y="13">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m0 0 h4 m184 0 h4 m0 0 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="261 10 269 6 269 14"/> + <polygon points="261 10 253 6 253 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#valuelistexpression" title="ValueListExpression" shape="rect">ValueListExpression</a></div> + <div>         ::= '(' <a href="#simpleexpressionlistatleasttwoitems" title="SimpleExpressionListAtLeastTwoItems" shape="rect">SimpleExpressionListAtLeastTwoItems</a> ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#comparisonitem" title="comparisonitem">comparisonitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + TableFunction +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="173" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#function" xlink:title="Function" shape="rect"> + <rect x="23" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">Function</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alias" xlink:title="Alias" shape="rect"> + <rect x="99" y="22" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="103" y="34">Alias</text></a><path class="line" d="m17 10 h2 m0 0 h4 m48 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m23 -21 h-3"/> + <polygon points="163 10 171 6 171 14"/> + <polygon points="163 10 155 6 155 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#tablefunction" title="TableFunction" shape="rect">TableFunction</a></div> + <div>         ::= <a href="#function" title="Function" shape="rect">Function</a> <a href="#alias" title="Alias" shape="rect">Alias</a>?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#fromitem" title="fromitem">fromitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SubSelect +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="201" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#withlist" xlink:title="WithList" shape="rect"> + <rect x="43" y="22" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="34">WithList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="117" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="13">SelectBody</text></a><path class="line" d="m17 10 h2 m20 0 h10 m0 0 h44 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v1 m74 0 v-1 m-74 1 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m20 -21 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="191 10 199 6 199 14"/> + <polygon points="191 10 183 6 183 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#subselect" title="SubSelect" shape="rect">SubSelect</a></div> + <div>         ::= <a href="#withlist" title="WithList" shape="rect">WithList</a>? <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#anycomparisonexpression" title="anycomparisonexpression">anycomparisonexpression</a></li><li><a href="#fromitem" title="fromitem">fromitem</a></li><li><a href="#inexpression" title="inexpression">inexpression</a></li><li><a href="#insertconflictaction" title="insertconflictaction">insertconflictaction</a></li><li><a href="#internalfunction" title="internalfunction">internalfunction</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#lateralsubselect" title="lateralsubselect">lateralsubselect</a></li><li><a href="#merge" title="merge">merge</a></li><li><a href="#plainlimit" title="plainlimit">plainlimit</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#replace" title="replace">replace</a></li><li><a href="#update" title="update">update</a></li><li><a href="#withitem" title="withitem">withitem</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ColumnNamesWithParamsList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="345" height="70"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="63" y="29" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="41">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="171" y="50" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="175" y="62">CreateParameter</text></a><rect x="63" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">,</text> + <rect x="309" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="313" y="41">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m12 0 h4 m20 0 h4 m80 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m-226 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m226 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-226 0 h4 m8 0 h4 m0 0 h210 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="335 38 343 34 343 42"/> + <polygon points="335 38 327 34 327 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#columnnameswithparamslist" title="ColumnNamesWithParamsList" shape="rect">ColumnNamesWithParamsList</a></div> + <div>         ::= '(' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>? ( ',' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>? )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createindex" title="createindex">createindex</a></li><li><a href="#createtable" title="createtable">createtable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Index +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#index" title="Index" shape="rect">Index</a>    ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createindex" title="createindex">createindex</a></li><li><a href="#purgestatement" title="purgestatement">purgestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateIndex +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="707" height="100"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="93" y="22" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="97" y="34">CreateParameter</text></a><rect x="211" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="215" y="13">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#index" xlink:title="Index" shape="rect"> + <rect x="255" y="1" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="13">Index</text></a><rect x="299" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="303" y="13">ON</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="329" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="333" y="13">Table</text></a><rect x="391" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="395" y="34">USING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="437" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="441" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnnameswithparamslist" xlink:title="ColumnNamesWithParamsList" shape="rect"> + <rect x="539" y="1" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="543" y="13">ColumnNamesWithParamsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="573" y="64" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="577" y="76">CreateParameter</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m90 0 h4 m20 -21 h4 m36 0 h4 m0 0 h4 m36 0 h4 m0 0 h4 m22 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h118 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v1 m148 0 v-1 m-148 1 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m38 0 h4 m0 0 h4 m74 0 h4 m20 -21 h4 m150 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-168 84 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m23 21 h-3"/> + <polygon points="697 94 705 90 705 98"/> + <polygon points="697 94 689 90 689 98"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createindex" title="CreateIndex" shape="rect">CreateIndex</a></div> + <div>         ::= 'CREATE' <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>? 'INDEX' <a href="#index" title="Index" shape="rect">Index</a> 'ON' <a href="#table" title="Table" shape="rect">Table</a> ( 'USING' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> )? <a href="#columnnameswithparamslist" title="ColumnNamesWithParamsList" shape="rect">ColumnNamesWithParamsList</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ColumnDefinition +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="341" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="22" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="34">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="111" y="22" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="34">ColDataType</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="207" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="211" y="13">CreateParameter</text></a><path class="line" d="m17 31 h2 m0 0 h4 m80 0 h4 m0 0 h4 m68 0 h4 m20 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m23 21 h-3"/> + <polygon points="331 31 339 27 339 35"/> + <polygon points="331 31 323 27 323 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#declare" title="declare">declare</a></li><li><a href="#rowconstructor" title="rowconstructor">rowconstructor</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateSchema +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="739" height="156"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text> + <rect x="73" y="1" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="77" y="13">SCHEMA</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="147" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="151" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="147" y="50" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="151" y="62">S_QUOTED_IDENTIFIER</text></a><rect x="315" y="22" width="86" height="18" class="terminal" rx="4"/> + <text class="terminal" x="319" y="34">AUTHORIZATION</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="429" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="433" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="429" y="50" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="433" y="62">S_QUOTED_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#pathspecification" xlink:title="PathSpecification" shape="rect"> + <rect x="617" y="22" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="621" y="34">PathSpecification</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createtable" xlink:title="CreateTable" shape="rect"> + <rect x="631" y="120" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="635" y="132">CreateTable</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createview" xlink:title="CreateView" shape="rect"> + <rect x="631" y="92" width="62" height="18" class="nonterminal"/> + <text class="nonterminal" x="635" y="104">CreateView</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m0 0 h4 m46 0 h4 m20 0 h10 m0 0 h118 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v1 m148 0 v-1 m-148 1 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m74 0 h4 m0 0 h46 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -49 h10 m0 0 h252 m-282 0 h20 m262 0 h20 m-302 0 q10 0 10 10 m282 0 q0 -10 10 -10 m-292 10 v1 m282 0 v-1 m-282 1 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m86 0 h4 m20 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m60 -49 h10 m0 0 h82 m-112 0 h20 m92 0 h20 m-132 0 q10 0 10 10 m112 0 q0 -10 10 -10 m-122 10 v1 m112 0 v-1 m-112 1 q0 10 10 10 m92 0 q10 0 10 -10 m-102 10 h4 m84 0 h4 m22 -21 l2 0 m2 0 l2 0 m2 0 l2 0 m-142 140 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h62 m-92 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m72 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-72 0 h4 m64 0 h4 m-82 10 l0 -28 q0 -10 10 -10 m82 38 l0 -28 q0 -10 -10 -10 m-72 0 h4 m62 0 h4 m0 0 h2 m23 49 h-3"/> + <polygon points="729 150 737 146 737 154"/> + <polygon points="729 150 721 146 721 154"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createschema" title="CreateSchema" shape="rect">CreateSchema</a></div> + <div>         ::= 'CREATE' 'SCHEMA' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> )? ( 'AUTHORIZATION' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )? <a href="#pathspecification" title="PathSpecification" shape="rect">PathSpecification</a>? ( <a href="#createtable" title="CreateTable" shape="rect">CreateTable</a> | <a href="#createview" title="CreateView" shape="rect">CreateView</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PathSpecification +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="287" height="77"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">PATH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="103" y="29" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="41">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="103" y="57" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="69">S_QUOTED_IDENTIFIER</text></a><rect x="83" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m32 0 h4 m40 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m-168 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m168 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-168 0 h4 m8 0 h4 m0 0 h152 m23 28 h-3"/> + <polygon points="277 38 285 34 285 42"/> + <polygon points="277 38 269 34 269 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#pathspecification" title="PathSpecification" shape="rect">PathSpecification</a></div> + <div>         ::= 'PATH' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ( ',' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createschema" title="createschema">createschema</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateTable +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="1503" height="752"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34">CREATE</text> + <rect x="93" y="43" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="97" y="55">OR</text> + <rect x="123" y="43" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="127" y="55">REPLACE</text> + <rect x="219" y="43" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="223" y="55">UNLOGGED</text> + <rect x="327" y="43" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="331" y="55">GLOBAL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="419" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="423" y="13">CreateParameter</text></a><rect x="537" y="22" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="541" y="34">TABLE</text> + <rect x="601" y="43" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="605" y="55">IF</text> + <rect x="625" y="43" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="629" y="55">NOT</text> + <rect x="661" y="43" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="665" y="55">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="729" y="22" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="733" y="34">Table</text></a><rect x="37" y="118" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="130">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columndefinition" xlink:title="ColumnDefinition" shape="rect"> + <rect x="77" y="118" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="81" y="130">ColumnDefinition</text></a><rect x="211" y="118" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="215" y="130">,</text> + <rect x="267" y="118" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="271" y="130">INDEX</text> + <rect x="287" y="167" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="291" y="179">UNIQUE</text> + <rect x="379" y="167" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="383" y="179">FULLTEXT</text> + <rect x="457" y="146" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="461" y="158">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="509" y="118" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="513" y="130">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnnameswithparamslist" xlink:title="ColumnNamesWithParamsList" shape="rect"> + <rect x="597" y="118" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="601" y="130">ColumnNamesWithParamsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="775" y="97" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="779" y="109">CreateParameter</text></a><rect x="267" y="237" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="271" y="249">CONSTRAINT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="343" y="237" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="347" y="249">RelObjectName</text></a><rect x="491" y="216" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="228">PRIMARY</text> + <rect x="549" y="216" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="553" y="228">KEY</text> + <rect x="491" y="244" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="495" y="256">UNIQUE</text> + <rect x="563" y="265" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="567" y="277">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnnameswithparamslist" xlink:title="ColumnNamesWithParamsList" shape="rect"> + <rect x="635" y="216" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="639" y="228">ColumnNamesWithParamsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="813" y="195" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="817" y="207">CreateParameter</text></a><rect x="471" y="293" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="475" y="305">FOREIGN</text> + <rect x="529" y="293" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="533" y="305">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnnameswithparamslist" xlink:title="ColumnNamesWithParamsList" shape="rect"> + <rect x="561" y="293" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="565" y="305">ColumnNamesWithParamsList</text></a><rect x="719" y="293" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="723" y="305">REFERENCES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="793" y="293" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="797" y="305">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="835" y="293" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="839" y="305">ColumnsNamesList</text></a><rect x="961" y="314" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="965" y="326">ON</text> + <rect x="1011" y="314" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1015" y="326">DELETE</text> + <rect x="1011" y="342" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1015" y="354">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="1083" y="314" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="1087" y="326">Action</text></a><rect x="1167" y="314" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1171" y="326">ON</text> + <rect x="1217" y="314" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1221" y="326">DELETE</text> + <rect x="1217" y="342" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1221" y="354">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="1289" y="314" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="1293" y="326">Action</text></a><rect x="471" y="384" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="475" y="396">CHECK</text> + <rect x="557" y="384" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="561" y="396">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="577" y="384" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="581" y="396">Expression</text></a><rect x="645" y="384" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="649" y="396">)</text> + <rect x="247" y="438" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="251" y="450">EXCLUDE</text> + <rect x="303" y="438" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="307" y="450">WHERE</text> + <rect x="393" y="438" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="397" y="450">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="413" y="438" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="417" y="450">Expression</text></a><rect x="481" y="438" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="485" y="450">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columndefinition" xlink:title="ColumnDefinition" shape="rect"> + <rect x="247" y="480" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="251" y="492">ColumnDefinition</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="97" y="550" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="101" y="562">RelObjectName</text></a><rect x="97" y="522" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="101" y="534">,</text> + <rect x="1453" y="118" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1457" y="130">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="452" y="604" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="456" y="616">CreateParameter</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#rowmovement" xlink:title="RowMovement" shape="rect"> + <rect x="590" y="646" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="594" y="658">RowMovement</text></a><rect x="718" y="646" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="722" y="658">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="746" y="646" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="750" y="658">SelectWithWithItems</text></a><rect x="900" y="646" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="904" y="658">LIKE</text> + <rect x="956" y="646" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="960" y="658">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="976" y="646" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="980" y="658">Table</text></a><rect x="1018" y="646" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1022" y="658">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="956" y="674" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="960" y="686">Table</text></a><rect x="1339" y="732" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1343" y="744">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#spannerinterleavein" xlink:title="SpannerInterleaveIn" shape="rect"> + <rect x="1355" y="732" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="1359" y="744">SpannerInterleaveIn</text></a><path class="line" d="m17 31 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h76 m-106 0 h20 m86 0 h20 m-126 0 q10 0 10 10 m106 0 q0 -10 10 -10 m-116 10 v1 m106 0 v-1 m-106 1 q0 10 10 10 m86 0 q10 0 10 -10 m-96 10 h4 m22 0 h4 m0 0 h4 m48 0 h4 m40 -21 h10 m0 0 h58 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v1 m88 0 v-1 m-88 1 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m40 -21 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m40 -21 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m20 21 h4 m36 0 h4 m20 0 h10 m0 0 h98 m-128 0 h20 m108 0 h20 m-148 0 q10 0 10 10 m128 0 q0 -10 10 -10 m-138 10 v1 m128 0 v-1 m-128 1 q0 10 10 10 m108 0 q10 0 10 -10 m-118 10 h4 m16 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m40 0 h4 m20 -21 h4 m34 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-778 96 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m12 0 h4 m20 0 h4 m86 0 h4 m40 0 h4 m8 0 h4 m40 0 h4 m36 0 h4 m0 0 h178 m-242 0 h20 m222 0 h20 m-262 0 q10 0 10 10 m242 0 q0 -10 10 -10 m-252 10 v8 m242 0 v-8 m-242 8 q0 10 10 10 m222 0 q10 0 10 -10 m-212 10 h10 m0 0 h42 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v1 m72 0 v-1 m-72 1 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m40 -21 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -21 h4 m24 0 h4 m20 -28 h4 m80 0 h4 m0 0 h4 m150 0 h4 m20 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m20 21 h480 m-1146 0 h20 m1126 0 h20 m-1166 0 q10 0 10 10 m1146 0 q0 -10 10 -10 m-1156 10 v78 m1146 0 v-78 m-1146 78 q0 10 10 10 m1126 0 q10 0 10 -10 m-1116 10 h10 m0 0 h154 m-184 0 h20 m164 0 h20 m-204 0 q10 0 10 10 m184 0 q0 -10 10 -10 m-194 10 v1 m184 0 v-1 m-184 1 q0 10 10 10 m164 0 q10 0 10 -10 m-174 10 h4 m68 0 h4 m0 0 h4 m80 0 h4 m60 -21 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h34 m-144 0 h20 m124 0 h20 m-164 0 q10 0 10 10 m144 0 q0 -10 10 -10 m-154 10 v8 m144 0 v-8 m-144 8 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m44 0 h4 m20 0 h10 m0 0 h22 m-52 0 h20 m32 0 h20 m-72 0 q10 0 10 10 m52 0 q0 -10 10 -10 m-62 10 v1 m52 0 v-1 m-52 1 q0 10 10 10 m32 0 q10 0 10 -10 m-42 10 h4 m24 0 h4 m40 -49 h4 m150 0 h4 m20 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m20 21 h422 m-902 0 h20 m882 0 h20 m-922 0 q10 0 10 10 m902 0 q0 -10 10 -10 m-912 10 v57 m902 0 v-57 m-902 57 q0 10 10 10 m882 0 q10 0 10 -10 m-892 10 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h4 m150 0 h4 m0 0 h4 m66 0 h4 m0 0 h4 m34 0 h4 m0 0 h4 m98 0 h4 m20 0 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m40 -21 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m-872 -31 v20 m902 0 v-20 m-902 20 v71 m902 0 v-71 m-902 71 q0 10 10 10 m882 0 q10 0 10 -10 m-892 10 h4 m38 0 h4 m40 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m108 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-108 0 h10 m0 0 h98 m-148 21 h20 m148 0 h20 m-188 0 q10 0 10 10 m168 0 q0 -10 10 -10 m-178 10 v1 m168 0 v-1 m-168 1 q0 10 10 10 m148 0 q10 0 10 -10 m-158 10 h10 m0 0 h138 m20 -21 h648 m-1116 -178 v20 m1146 0 v-20 m-1146 20 v202 m1146 0 v-202 m-1146 202 q0 10 10 10 m1126 0 q10 0 10 -10 m-1136 10 h4 m48 0 h4 m0 0 h4 m42 0 h4 m40 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m108 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-108 0 h10 m0 0 h98 m-148 21 h20 m148 0 h20 m-188 0 q10 0 10 10 m168 0 q0 -10 10 -10 m-178 10 v1 m168 0 v-1 m-168 1 q0 10 10 10 m148 0 q10 0 10 -10 m-158 10 h10 m0 0 h138 m20 -21 h832 m-1136 -10 v20 m1146 0 v-20 m-1146 20 v22 m1146 0 v-22 m-1146 22 q0 10 10 10 m1126 0 q10 0 10 -10 m-1136 10 h4 m86 0 h4 m0 0 h1032 m-1182 -362 l20 0 m-1 0 q-9 0 -9 -10 l0 -22 q0 -10 10 -10 m1182 42 l20 0 m-20 0 q10 0 10 -10 l0 -22 q0 -10 -10 -10 m-1182 0 h10 m0 0 h1172 m-1222 42 h20 m1222 0 h20 m-1262 0 q10 0 10 10 m1242 0 q0 -10 10 -10 m-1252 10 v363 m1242 0 v-363 m-1242 363 q0 10 10 10 m1222 0 q10 0 10 -10 m-1232 10 h10 m0 0 h1212 m-1356 -383 h20 m1356 0 h20 m-1396 0 q10 0 10 10 m1376 0 q0 -10 10 -10 m-1386 10 v412 m1376 0 v-412 m-1376 412 q0 10 10 10 m1356 0 q10 0 10 -10 m-1346 10 h4 m80 0 h4 m-108 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m88 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-88 0 h4 m8 0 h4 m0 0 h72 m20 28 h1228 m20 -432 h4 m12 0 h4 m-1456 0 h20 m1436 0 h20 m-1476 0 q10 0 10 10 m1456 0 q0 -10 10 -10 m-1466 10 v433 m1456 0 v-433 m-1456 433 q0 10 10 10 m1436 0 q10 0 10 -10 m-1446 10 h10 m0 0 h1426 m22 -453 l2 0 m2 0 l2 0 m2 0 l2 0 m-1085 507 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m40 21 h10 m0 0 h78 m-108 0 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v1 m108 0 v-1 m-108 1 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m80 0 h4 m40 -21 h10 m0 0 h132 m-162 0 h20 m142 0 h20 m-182 0 q10 0 10 10 m162 0 q0 -10 10 -10 m-172 10 v1 m162 0 v-1 m-162 1 q0 10 10 10 m142 0 q10 0 10 -10 m-152 10 h4 m20 0 h4 m0 0 h4 m106 0 h4 m40 -21 h10 m0 0 h148 m-178 0 h20 m158 0 h20 m-198 0 q10 0 10 10 m178 0 q0 -10 10 -10 m-188 10 v1 m178 0 v-1 m-178 1 q0 10 10 10 m158 0 q10 0 10 -10 m-168 10 h4 m28 0 h4 m20 0 h4 m12 0 h4 m0 0 h4 m34 0 h4 m0 0 h4 m12 0 h4 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m34 0 h4 m0 0 h40 m42 -49 l2 0 m2 0 l2 0 m2 0 l2 0 m217 86 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h118 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v1 m148 0 v-1 m-148 1 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m8 0 h4 m0 0 h4 m104 0 h4 m23 -21 h-3"/> + <polygon points="1493 720 1501 716 1501 724"/> + <polygon points="1493 720 1485 716 1485 724"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createtable" title="CreateTable" shape="rect">CreateTable</a></div> + <div>         ::= 'CREATE' ( 'OR' 'REPLACE' )? 'UNLOGGED'? 'GLOBAL'? <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>* 'TABLE' ( 'IF' 'NOT' 'EXISTS' )? <a href="#table" title="Table" shape="rect">Table</a> ( '(' ( <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( ',' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )* | <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> ( ',' ( ( 'INDEX' | 'UNIQUE'? 'FULLTEXT'? 'KEY' ) <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#columnnameswithparamslist" title="ColumnNamesWithParamsList" shape="rect">ColumnNamesWithParamsList</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>* | ( 'CONSTRAINT' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )? ( ( 'PRIMARY' 'KEY' | 'UNIQUE' 'KEY'? ) <a href="#columnnameswithparamslist" title="ColumnNamesWithParamsList" shape="rect">ColumnNamesWithParamsList</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>* | 'FOREIGN' 'KEY' <a href="#columnnameswithparamslist" title="ColumnNamesWithParamsList" shape="rect">ColumnNamesWithParamsList</a> 'REFERENCES' <a href="#table" title="Table" shape="rect">Table</a> <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? | 'CHECK' ( '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' )* ) | 'EXCLUDE' 'WHERE' ( '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' )* | <a href="#columndefinition" title="ColumnDefinition" shape="rect">ColumnDefinition</a> ) )* ) ')' )? <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>* <a href="#rowmovement" title="RowMovement" shape="rect">RowMovement</a>? ( 'AS' <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a> )? ( 'LIKE' ( '(' <a href="#table" title="Table" shape="rect">Table</a> ')' | <a href="#table" title="Table" shape="rect">Table</a> ) )? ( ',' <a href="#spannerinterleavein" title="SpannerInterleaveIn" shape="rect">SpannerInterleaveIn</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createschema" title="createschema">createschema</a></li><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SpannerInterleaveIn +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="469" height="70"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">INTERLEAVE</text> + <rect x="93" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="97" y="13">IN</text> + <rect x="119" y="1" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="13">PARENT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="171" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="175" y="13">Table</text></a><rect x="233" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="237" y="34">ON</text> + <rect x="263" y="22" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="267" y="34">DELETE</text> + <rect x="331" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="335" y="34">NO</text> + <rect x="361" y="22" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="34">ACTION</text> + <rect x="331" y="50" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="335" y="62">CASCADE</text> + <path class="line" d="m17 10 h2 m0 0 h4 m62 0 h4 m0 0 h4 m18 0 h4 m0 0 h4 m44 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h190 m-220 0 h20 m200 0 h20 m-240 0 q10 0 10 10 m220 0 q0 -10 10 -10 m-230 10 v1 m220 0 v-1 m-220 1 q0 10 10 10 m200 0 q10 0 10 -10 m-210 10 h4 m22 0 h4 m0 0 h4 m40 0 h4 m20 0 h4 m22 0 h4 m0 0 h4 m44 0 h4 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m50 0 h4 m0 0 h24 m43 -49 h-3"/> + <polygon points="459 10 467 6 467 14"/> + <polygon points="459 10 451 6 451 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#spannerinterleavein" title="SpannerInterleaveIn" shape="rect">SpannerInterleaveIn</a></div> + <div>         ::= 'INTERLEAVE' 'IN' 'PARENT' <a href="#table" title="Table" shape="rect">Table</a> ( 'ON' 'DELETE' ( 'NO' 'ACTION' | 'CASCADE' ) )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createtable" title="createtable">createtable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ColDataType +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="637" height="899"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ARRAY</text> + <rect x="89" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="13"><</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="111" y="1" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="13">ColDataType</text></a><rect x="187" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="191" y="13">></text> + <rect x="63" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="41">BYTES</text> + <rect x="63" y="57" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="69">STRING</text> + <rect x="63" y="85" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="97">JSON</text> + <rect x="133" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="137" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="173" y="29" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="177" y="41">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="173" y="57" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="177" y="69">S_IDENTIFIER</text></a><rect x="275" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="279" y="41">)</text> + <rect x="63" y="113" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="125">CHARACTER</text> + <rect x="63" y="141" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="153">BIT</text> + <rect x="173" y="134" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="146">VARYING</text> + <rect x="43" y="169" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="181">DOUBLE</text> + <rect x="117" y="190" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="202">PRECISION</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="63" y="218" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="230">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="63" y="246" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="258">S_QUOTED_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="63" y="274" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="286">K_DATETIMELITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-date-literal" xlink:title="K_DATE_LITERAL" shape="rect"> + <rect x="63" y="302" width="88" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="314">K_DATE_LITERAL</text></a><rect x="63" y="330" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="342">XML</text> + <rect x="63" y="358" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="370">INTERVAL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#dt-zone" xlink:title="DT_ZONE" shape="rect"> + <rect x="63" y="386" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="398">DT_ZONE</text></a><rect x="63" y="414" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="426">CHAR</text> + <rect x="63" y="442" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="454">SET</text> + <rect x="63" y="470" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="482">BINARY</text> + <rect x="63" y="498" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="510">JSON</text> + <rect x="63" y="526" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="538">STRING</text> + <rect x="231" y="239" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="235" y="251">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="267" y="239" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="271" y="251">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="267" y="267" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="271" y="279">S_QUOTED_IDENTIFIER</text></a><rect x="63" y="554" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="566">UNSIGNED</text> + <rect x="63" y="582" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="594">SIGNED</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="167" y="575" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="171" y="587">S_IDENTIFIER</text></a><rect x="37" y="636" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="41" y="648">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="117" y="636" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="648">S_LONG</text></a><rect x="193" y="657" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="197" y="669">BYTE</text> + <rect x="193" y="685" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="197" y="697">CHAR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="117" y="713" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="725">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="117" y="741" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="121" y="753">S_IDENTIFIER</text></a><rect x="117" y="769" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="781">CHAR</text> + <rect x="295" y="657" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="299" y="669">,</text> + <rect x="371" y="636" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="375" y="648">)</text> + <rect x="451" y="636" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="455" y="648">[</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="491" y="657" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="495" y="669">S_LONG</text></a><rect x="567" y="636" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="571" y="648">]</text> + <rect x="377" y="851" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="381" y="863">CHARACTER</text> + <rect x="447" y="851" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="451" y="863">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="499" y="851" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="503" y="863">S_IDENTIFIER</text></a><rect x="499" y="879" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="503" y="891">BINARY</text> + <path class="line" d="m17 10 h2 m20 0 h4 m38 0 h4 m0 0 h4 m14 0 h4 m0 0 h4 m68 0 h4 m0 0 h4 m14 0 h4 m0 0 h226 m-412 0 h20 m392 0 h20 m-432 0 q10 0 10 10 m412 0 q0 -10 10 -10 m-422 10 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-382 10 h4 m36 0 h4 m0 0 h6 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m42 0 h4 m-60 -10 v20 m70 0 v-20 m-70 20 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m32 0 h4 m0 0 h10 m20 -56 h4 m12 0 h4 m20 0 h4 m48 0 h4 m0 0 h26 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m74 0 h4 m20 -28 h4 m12 0 h4 m0 0 h140 m-402 -10 v20 m412 0 v-20 m-412 20 v64 m412 0 v-64 m-412 64 q0 10 10 10 m392 0 q10 0 10 -10 m-382 10 h4 m62 0 h4 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m22 0 h4 m0 0 h40 m40 -28 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m20 -21 h184 m-402 -10 v20 m412 0 v-20 m-412 20 v36 m412 0 v-36 m-412 36 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m46 0 h4 m20 0 h10 m0 0 h58 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v1 m88 0 v-1 m-88 1 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m20 -21 h230 m-402 -10 v20 m412 0 v-20 m-412 20 v29 m412 0 v-29 m-412 29 q0 10 10 10 m392 0 q10 0 10 -10 m-382 10 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m104 0 h4 m0 0 h16 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m88 0 h4 m0 0 h32 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m28 0 h4 m0 0 h92 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m52 0 h4 m0 0 h68 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m54 0 h4 m0 0 h66 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m34 0 h4 m0 0 h86 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m24 0 h4 m0 0 h96 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m42 0 h4 m0 0 h78 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m32 0 h4 m0 0 h88 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m42 0 h4 m0 0 h78 m40 -308 h10 m0 0 h174 m-204 0 h20 m184 0 h20 m-224 0 q10 0 10 10 m204 0 q0 -10 10 -10 m-214 10 v1 m204 0 v-1 m-204 1 q0 10 10 10 m184 0 q10 0 10 -10 m-194 10 h4 m8 0 h4 m20 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m-362 -59 v20 m412 0 v-20 m-412 20 v316 m412 0 v-316 m-412 316 q0 10 10 10 m392 0 q10 0 10 -10 m-382 10 h4 m56 0 h4 m-84 0 h20 m64 0 h20 m-104 0 q10 0 10 10 m84 0 q0 -10 10 -10 m-94 10 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m42 0 h4 m0 0 h14 m40 -28 h10 m0 0 h72 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v1 m102 0 v-1 m-102 1 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m74 0 h4 m20 -21 h166 m22 -553 l2 0 m2 0 l2 0 m2 0 l2 0 m-462 635 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m12 0 h4 m60 0 h4 m48 0 h4 m20 0 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m30 0 h4 m0 0 h4 m-52 -10 v20 m62 0 v-20 m-62 20 v8 m62 0 v-8 m-62 8 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m-138 -49 h20 m138 0 h20 m-178 0 q10 0 10 10 m158 0 q0 -10 10 -10 m-168 10 v57 m158 0 v-57 m-158 57 q0 10 10 10 m138 0 q10 0 10 -10 m-148 10 h4 m90 0 h4 m0 0 h40 m-148 -10 v20 m158 0 v-20 m-158 20 v8 m158 0 v-8 m-158 8 q0 10 10 10 m138 0 q10 0 10 -10 m-148 10 h4 m74 0 h4 m0 0 h56 m-148 -10 v20 m158 0 v-20 m-158 20 v8 m158 0 v-8 m-158 8 q0 10 10 10 m138 0 q10 0 10 -10 m-148 10 h4 m34 0 h4 m0 0 h96 m40 -133 h10 m0 0 h6 m-36 0 h20 m16 0 h20 m-56 0 q10 0 10 10 m36 0 q0 -10 10 -10 m-46 10 v1 m36 0 v-1 m-36 1 q0 10 10 10 m16 0 q10 0 10 -10 m-26 10 h4 m8 0 h4 m-234 -21 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m234 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-234 0 h10 m0 0 h224 m-274 21 h20 m274 0 h20 m-314 0 q10 0 10 10 m294 0 q0 -10 10 -10 m-304 10 v134 m294 0 v-134 m-294 134 q0 10 10 10 m274 0 q10 0 10 -10 m-284 10 h10 m0 0 h264 m20 -154 h4 m12 0 h4 m-374 0 h20 m354 0 h20 m-394 0 q10 0 10 10 m374 0 q0 -10 10 -10 m-384 10 v146 m374 0 v-146 m-374 146 q0 10 10 10 m354 0 q10 0 10 -10 m-364 10 h10 m0 0 h344 m60 -166 h4 m12 0 h4 m20 0 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -21 h4 m12 0 h4 m-156 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m136 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-136 0 h10 m0 0 h126 m-176 21 h20 m176 0 h20 m-216 0 q10 0 10 10 m196 0 q0 -10 10 -10 m-206 10 v22 m196 0 v-22 m-196 22 q0 10 10 10 m176 0 q10 0 10 -10 m-186 10 h10 m0 0 h166 m22 -42 l2 0 m2 0 l2 0 m2 0 l2 0 m-294 194 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h214 m-244 0 h20 m224 0 h20 m-264 0 q10 0 10 10 m244 0 q0 -10 10 -10 m-254 10 v1 m244 0 v-1 m-244 1 q0 10 10 10 m224 0 q10 0 10 -10 m-234 10 h4 m62 0 h4 m0 0 h4 m24 0 h4 m20 0 h4 m74 0 h4 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m42 0 h4 m0 0 h32 m43 -49 h-3"/> + <polygon points="627 839 635 835 635 843"/> + <polygon points="627 839 619 835 619 843"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a></div> + <div>         ::= ( 'ARRAY' '<' <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> '>' | ( 'BYTES' | 'STRING' | 'JSON' ) '(' ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ) ')' | ( 'CHARACTER' | 'BIT' ) 'VARYING'? | 'DOUBLE' 'PRECISION'? | ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> | <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> | <a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a> | 'XML' | 'INTERVAL' | <a href="#dt-zone" title="DT_ZONE" shape="rect">DT_ZONE</a> | 'CHAR' | 'SET' | 'BINARY' | 'JSON' | 'STRING' ) ( '.' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )? | ( 'UNSIGNED' | 'SIGNED' ) <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a>? ) ( '(' ( ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ( 'BYTE' | 'CHAR' )? | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | 'CHAR' ) ','? )* ')' )? ( '[' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a>? ']' )* ( 'CHARACTER' 'SET' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | 'BINARY' ) )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alias" title="alias">alias</a></li><li><a href="#alterexpressioncolumndatatype" title="alterexpressioncolumndatatype">alterexpressioncolumndatatype</a></li><li><a href="#castexpression" title="castexpression">castexpression</a></li><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#columndefinition" title="columndefinition">columndefinition</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#declare" title="declare">declare</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#safecastexpression" title="safecastexpression">safecastexpression</a></li><li><a href="#trycastexpression" title="trycastexpression">trycastexpression</a></li><li><a href="#xmlserializeexpr" title="xmlserializeexpr">xmlserializeexpr</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Analyze +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="137" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">ANALYZE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="79" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="83" y="13">Table</text></a><path class="line" d="m17 10 h2 m0 0 h4 m48 0 h4 m0 0 h4 m34 0 h4 m3 0 h-3"/> + <polygon points="127 10 135 6 135 14"/> + <polygon points="127 10 119 6 119 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#analyze" title="Analyze" shape="rect">Analyze</a>  ::= 'ANALYZE' <a href="#table" title="Table" shape="rect">Table</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateView +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="685" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text> + <rect x="93" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="97" y="34">OR</text> + <rect x="123" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="127" y="34">REPLACE</text> + <rect x="239" y="43" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="243" y="55">NO</text> + <rect x="289" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="293" y="34">FORCE</text> + <rect x="375" y="22" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="34">TEMP</text> + <rect x="375" y="50" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="62">TEMPORARY</text> + <rect x="489" y="22" width="74" height="18" class="terminal" rx="4"/> + <text class="terminal" x="493" y="34">MATERIALIZED</text> + <rect x="591" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="595" y="13">VIEW</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="633" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="637" y="13">Table</text></a><rect x="89" y="113" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="125">IF</text> + <rect x="113" y="113" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="117" y="125">NOT</text> + <rect x="149" y="113" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="153" y="125">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="237" y="113" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="241" y="125">ColumnsNamesList</text></a><rect x="363" y="92" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="367" y="104">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectwithwithitems" xlink:title="SelectWithWithItems" shape="rect"> + <rect x="391" y="92" width="106" height="18" class="nonterminal"/> + <text class="nonterminal" x="395" y="104">SelectWithWithItems</text></a><rect x="525" y="113" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="529" y="125">WITH</text> + <rect x="567" y="113" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="571" y="125">READ</text> + <rect x="607" y="113" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="611" y="125">ONLY</text> + <path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h76 m-106 0 h20 m86 0 h20 m-126 0 q10 0 10 10 m106 0 q0 -10 10 -10 m-116 10 v1 m106 0 v-1 m-106 1 q0 10 10 10 m86 0 q10 0 10 -10 m-96 10 h4 m22 0 h4 m0 0 h4 m48 0 h4 m40 -21 h10 m0 0 h106 m-136 0 h20 m116 0 h20 m-156 0 q10 0 10 10 m136 0 q0 -10 10 -10 m-146 10 v1 m136 0 v-1 m-136 1 q0 10 10 10 m116 0 q10 0 10 -10 m-106 10 h10 m0 0 h20 m-50 0 h20 m30 0 h20 m-70 0 q10 0 10 10 m50 0 q0 -10 10 -10 m-60 10 v1 m50 0 v-1 m-50 1 q0 10 10 10 m30 0 q10 0 10 -10 m-40 10 h4 m22 0 h4 m20 -21 h4 m38 0 h4 m40 -21 h10 m0 0 h64 m-94 0 h20 m74 0 h20 m-114 0 q10 0 10 10 m94 0 q0 -10 10 -10 m-104 10 v1 m94 0 v-1 m-94 1 q0 10 10 10 m74 0 q10 0 10 -10 m-84 10 h4 m32 0 h4 m0 0 h34 m-84 -10 v20 m94 0 v-20 m-94 20 v8 m94 0 v-8 m-94 8 q0 10 10 10 m74 0 q10 0 10 -10 m-84 10 h4 m66 0 h4 m40 -49 h10 m0 0 h72 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v1 m102 0 v-1 m-102 1 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m74 0 h4 m20 -21 h4 m34 0 h4 m0 0 h4 m34 0 h4 m2 0 l2 0 m2 0 l2 0 m2 0 l2 0 m-630 91 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h10 m0 0 h98 m-128 0 h20 m108 0 h20 m-148 0 q10 0 10 10 m128 0 q0 -10 10 -10 m-138 10 v1 m128 0 v-1 m-128 1 q0 10 10 10 m108 0 q10 0 10 -10 m-118 10 h4 m16 0 h4 m0 0 h4 m28 0 h4 m0 0 h4 m40 0 h4 m40 -21 h10 m0 0 h96 m-126 0 h20 m106 0 h20 m-146 0 q10 0 10 10 m126 0 q0 -10 10 -10 m-136 10 v1 m126 0 v-1 m-126 1 q0 10 10 10 m106 0 q10 0 10 -10 m-116 10 h4 m98 0 h4 m20 -21 h4 m20 0 h4 m0 0 h4 m106 0 h4 m20 0 h10 m0 0 h114 m-144 0 h20 m124 0 h20 m-164 0 q10 0 10 10 m144 0 q0 -10 10 -10 m-154 10 v1 m144 0 v-1 m-144 1 q0 10 10 10 m124 0 q10 0 10 -10 m-134 10 h4 m34 0 h4 m0 0 h4 m32 0 h4 m0 0 h4 m34 0 h4 m23 -21 h-3"/> + <polygon points="675 101 683 97 683 105"/> + <polygon points="675 101 667 97 667 105"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createview" title="CreateView" shape="rect">CreateView</a></div> + <div>         ::= 'CREATE' ( 'OR' 'REPLACE' )? ( 'NO'? 'FORCE' )? ( 'TEMP' | 'TEMPORARY' + )? 'MATERIALIZED'? 'VIEW' <a href="#table" title="Table" shape="rect">Table</a> ( 'IF' 'NOT' 'EXISTS' )? <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a>? 'AS' <a href="#selectwithwithitems" title="SelectWithWithItems" shape="rect">SelectWithWithItems</a> ( 'WITH' 'READ' 'ONLY' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createschema" title="createschema">createschema</a></li><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Action +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="207" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">CASCADE</text> + <rect x="43" y="29" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">RESTRICT</text> + <rect x="43" y="57" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">NO</text> + <rect x="73" y="57" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="77" y="69">ACTION</text> + <rect x="43" y="85" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">SET</text> + <rect x="95" y="85" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="99" y="97">NULL</text> + <rect x="95" y="113" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="99" y="125">DEFAULT</text> + <path class="line" d="m17 10 h2 m20 0 h4 m50 0 h4 m0 0 h70 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m52 0 h4 m0 0 h68 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m22 0 h4 m0 0 h4 m44 0 h4 m0 0 h46 m-138 -10 v20 m148 0 v-20 m-148 20 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m24 0 h4 m20 0 h4 m32 0 h4 m0 0 h16 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m43 -112 h-3"/> + <polygon points="197 10 205 6 205 14"/> + <polygon points="197 10 189 6 189 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#action" title="Action" shape="rect">Action</a>   ::= 'CASCADE'</div> + <div>           | 'RESTRICT'</div> + <div>           | 'NO' 'ACTION'</div> + <div>           | 'SET' ( 'NULL' | 'DEFAULT' )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#createtable" title="createtable">createtable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterView +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="461" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ALTER</text> + <rect x="43" y="29" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">REPLACE</text> + <rect x="119" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="13">VIEW</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="161" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="165" y="13">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="223" y="22" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="227" y="34">ColumnsNamesList</text></a><rect x="349" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="353" y="13">AS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#selectbody" xlink:title="SelectBody" shape="rect"> + <rect x="377" y="1" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="381" y="13">SelectBody</text></a><path class="line" d="m17 10 h2 m20 0 h4 m36 0 h4 m0 0 h12 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v8 m76 0 v-8 m-76 8 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -28 h4 m34 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h96 m-126 0 h20 m106 0 h20 m-146 0 q10 0 10 10 m126 0 q0 -10 10 -10 m-136 10 v1 m126 0 v-1 m-126 1 q0 10 10 10 m106 0 q10 0 10 -10 m-116 10 h4 m98 0 h4 m20 -21 h4 m20 0 h4 m0 0 h4 m60 0 h4 m3 0 h-3"/> + <polygon points="451 10 459 6 459 14"/> + <polygon points="451 10 443 6 443 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterview" title="AlterView" shape="rect">AlterView</a></div> + <div>         ::= ( 'ALTER' | 'REPLACE' ) 'VIEW' <a href="#table" title="Table" shape="rect">Table</a> <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a>? 'AS' <a href="#selectbody" title="SelectBody" shape="rect">SelectBody</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateParameter +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="471" height="1477"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="63" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="13">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="63" y="29" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="41">S_QUOTED_IDENTIFIER</text></a><rect x="231" y="22" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="235" y="34">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="267" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="271" y="34">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="267" y="50" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="271" y="62">S_QUOTED_IDENTIFIER</text></a><rect x="43" y="78" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="90">NULL</text> + <rect x="43" y="106" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="118">NOT</text> + <rect x="43" y="134" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="146">PRIMARY</text> + <rect x="43" y="162" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="174">DEFAULT</text> + <rect x="43" y="190" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="202">FOREIGN</text> + <rect x="43" y="218" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="230">REFERENCES</text> + <rect x="43" y="246" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="258">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="43" y="274" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="286">S_CHAR_LITERAL</text></a><rect x="63" y="323" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="335">+</text> + <rect x="63" y="351" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="363">-</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="125" y="302" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="314">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-double" xlink:title="S_DOUBLE" shape="rect"> + <rect x="125" y="330" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="342">S_DOUBLE</text></a><rect x="43" y="379" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="391">AS</text> + <rect x="91" y="400" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="95" y="412">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="111" y="400" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="115" y="412">Expression</text></a><rect x="179" y="400" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="183" y="412">)</text> + <rect x="43" y="428" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="440">STORED</text> + <rect x="43" y="456" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="468">ON</text> + <rect x="43" y="484" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="496">COMMIT</text> + <rect x="43" y="512" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="524">DROP</text> + <rect x="43" y="540" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="552">ROWS</text> + <rect x="43" y="568" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="580">UNIQUE</text> + <rect x="43" y="596" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="608">CASCADE</text> + <rect x="43" y="624" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="636">DELETE</text> + <rect x="43" y="652" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="664">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-time-key-expr" xlink:title="K_TIME_KEY_EXPR" shape="rect"> + <rect x="43" y="680" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="692">K_TIME_KEY_EXPR</text></a><rect x="43" y="708" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="720">=</text> + <rect x="43" y="736" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="748">USING</text> + <rect x="109" y="757" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="113" y="769">INDEX</text> + <rect x="153" y="757" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="157" y="769">TABLESPACE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="225" y="757" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="229" y="769">RelObjectName</text></a><rect x="43" y="785" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="797">TABLESPACE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="115" y="785" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="119" y="797">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alist" xlink:title="AList" shape="rect"> + <rect x="43" y="813" width="30" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="825">AList</text></a><rect x="43" y="841" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="853">CHECK</text> + <rect x="89" y="841" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="93" y="853">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="109" y="841" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="113" y="853">Expression</text></a><rect x="177" y="841" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="181" y="853">)</text> + <rect x="43" y="869" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="881">CONSTRAINT</text> + <rect x="43" y="897" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="909">WITH</text> + <rect x="43" y="925" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="937">EXCLUDE</text> + <rect x="43" y="953" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="965">WHERE</text> + <rect x="43" y="981" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="993">UNSIGNED</text> + <rect x="43" y="1009" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1021">TEMP</text> + <rect x="43" y="1037" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1049">TEMPORARY</text> + <rect x="43" y="1065" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1077">PARTITION</text> + <rect x="43" y="1093" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1105">BY</text> + <rect x="43" y="1121" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1133">IN</text> + <rect x="43" y="1149" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1161">TYPE</text> + <rect x="43" y="1177" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1189">COMMENT</text> + <rect x="43" y="1205" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1217">COLLATE</text> + <rect x="43" y="1233" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1245">ASC</text> + <rect x="43" y="1261" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1273">DESC</text> + <rect x="43" y="1289" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1301">TRUE</text> + <rect x="43" y="1317" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1329">FALSE</text> + <rect x="43" y="1345" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1357">PARALLEL</text> + <rect x="43" y="1373" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1385">BINARY</text> + <rect x="43" y="1401" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1413">CHARACTER</text> + <rect x="113" y="1401" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="117" y="1413">SET</text> + <rect x="43" y="1429" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1441">ARRAY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#arrayconstructor" xlink:title="ArrayConstructor" shape="rect"> + <rect x="89" y="1429" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="93" y="1441">ArrayConstructor</text></a><rect x="43" y="1457" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1469">::</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="63" y="1457" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="1469">ColDataType</text></a><path class="line" d="m17 10 h2 m40 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -28 h10 m0 0 h174 m-204 0 h20 m184 0 h20 m-224 0 q10 0 10 10 m204 0 q0 -10 10 -10 m-214 10 v1 m204 0 v-1 m-204 1 q0 10 10 10 m184 0 q10 0 10 -10 m-194 10 h4 m8 0 h4 m20 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m-372 -49 h20 m392 0 h20 m-432 0 q10 0 10 10 m412 0 q0 -10 10 -10 m-422 10 v57 m412 0 v-57 m-412 57 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m32 0 h4 m0 0 h352 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m28 0 h4 m0 0 h356 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m50 0 h4 m0 0 h334 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m48 0 h4 m0 0 h336 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m50 0 h4 m0 0 h334 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m66 0 h4 m0 0 h318 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m24 0 h4 m0 0 h360 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m90 0 h4 m0 0 h294 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-382 10 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m10 0 h4 m0 0 h4 m40 -49 h4 m48 0 h4 m0 0 h12 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v8 m88 0 v-8 m-88 8 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m20 -28 h222 m-402 -10 v20 m412 0 v-20 m-412 20 v57 m412 0 v-57 m-412 57 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m20 0 h4 m20 0 h10 m0 0 h98 m-128 0 h20 m108 0 h20 m-148 0 q10 0 10 10 m128 0 q0 -10 10 -10 m-138 10 v1 m128 0 v-1 m-128 1 q0 10 10 10 m108 0 q10 0 10 -10 m-118 10 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m20 -21 h216 m-402 -10 v20 m412 0 v-20 m-412 20 v29 m412 0 v-29 m-412 29 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m46 0 h4 m0 0 h338 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m22 0 h4 m0 0 h362 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m48 0 h4 m0 0 h336 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m34 0 h4 m0 0 h350 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m38 0 h4 m0 0 h346 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m44 0 h4 m0 0 h340 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m50 0 h4 m0 0 h334 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m40 0 h4 m0 0 h344 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m44 0 h4 m0 0 h340 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m98 0 h4 m0 0 h286 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m14 0 h4 m0 0 h370 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m38 0 h4 m20 0 h10 m0 0 h194 m-224 0 h20 m204 0 h20 m-244 0 q10 0 10 10 m224 0 q0 -10 10 -10 m-234 10 v1 m224 0 v-1 m-224 1 q0 10 10 10 m204 0 q10 0 10 -10 m-214 10 h4 m36 0 h4 m0 0 h4 m64 0 h4 m0 0 h4 m80 0 h4 m20 -21 h102 m-402 -10 v20 m412 0 v-20 m-412 20 v29 m412 0 v-29 m-412 29 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m64 0 h4 m0 0 h4 m80 0 h4 m0 0 h232 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m30 0 h4 m0 0 h354 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m38 0 h4 m0 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m0 0 h238 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m68 0 h4 m0 0 h316 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m34 0 h4 m0 0 h350 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m48 0 h4 m0 0 h336 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m42 0 h4 m0 0 h342 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m56 0 h4 m0 0 h328 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m32 0 h4 m0 0 h352 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m66 0 h4 m0 0 h318 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m58 0 h4 m0 0 h326 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m20 0 h4 m0 0 h364 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m18 0 h4 m0 0 h366 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m30 0 h4 m0 0 h354 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m56 0 h4 m0 0 h328 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m48 0 h4 m0 0 h336 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m26 0 h4 m0 0 h358 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m32 0 h4 m0 0 h352 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m32 0 h4 m0 0 h352 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m36 0 h4 m0 0 h348 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m52 0 h4 m0 0 h332 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m42 0 h4 m0 0 h342 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m62 0 h4 m0 0 h4 m24 0 h4 m0 0 h290 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m38 0 h4 m0 0 h4 m86 0 h4 m0 0 h252 m-402 -10 v20 m412 0 v-20 m-412 20 v8 m412 0 v-8 m-412 8 q0 10 10 10 m392 0 q10 0 10 -10 m-402 10 h4 m12 0 h4 m0 0 h4 m68 0 h4 m0 0 h296 m23 -1456 h-3"/> + <polygon points="461 10 469 6 469 14"/> + <polygon points="461 10 453 6 453 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a></div> + <div>         ::= ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ( '.' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )?</div> + <div>           | 'NULL'</div> + <div>           | 'NOT'</div> + <div>           | 'PRIMARY'</div> + <div>           | 'DEFAULT'</div> + <div>           | 'FOREIGN'</div> + <div>           | 'REFERENCES'</div> + <div>           | 'KEY'</div> + <div>           | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a></div> + <div>           | ( '+' | '-' )? ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> )</div> + <div>           | 'AS' ( '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' )?</div> + <div>           | 'STORED'</div> + <div>           | 'ON'</div> + <div>           | 'COMMIT'</div> + <div>           | 'DROP'</div> + <div>           | 'ROWS'</div> + <div>           | 'UNIQUE'</div> + <div>           | 'CASCADE'</div> + <div>           | 'DELETE'</div> + <div>           | 'UPDATE'</div> + <div>           | <a href="#k-time-key-expr" title="K_TIME_KEY_EXPR" shape="rect">K_TIME_KEY_EXPR</a></div> + <div>           | '='</div> + <div>           | 'USING' ( 'INDEX' 'TABLESPACE' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )?</div> + <div>           | 'TABLESPACE' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a></div> + <div>           | <a href="#alist" title="AList" shape="rect">AList</a></div> + <div>           | 'CHECK' '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')'</div> + <div>           | 'CONSTRAINT'</div> + <div>           | 'WITH'</div> + <div>           | 'EXCLUDE'</div> + <div>           | 'WHERE'</div> + <div>           | 'UNSIGNED'</div> + <div>           | 'TEMP'</div> + <div>           | 'TEMPORARY'</div> + <div>           | 'PARTITION'</div> + <div>           | 'BY'</div> + <div>           | 'IN'</div> + <div>           | 'TYPE'</div> + <div>           | 'COMMENT'</div> + <div>           | 'COLLATE'</div> + <div>           | 'ASC'</div> + <div>           | 'DESC'</div> + <div>           | 'TRUE'</div> + <div>           | 'FALSE'</div> + <div>           | 'PARALLEL'</div> + <div>           | 'BINARY'</div> + <div>           | 'CHARACTER' 'SET'</div> + <div>           | 'ARRAY' <a href="#arrayconstructor" title="ArrayConstructor" shape="rect">ArrayConstructor</a></div> + <div>           | '::' <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpressioncolumndatatype" title="alterexpressioncolumndatatype">alterexpressioncolumndatatype</a></li><li><a href="#columndefinition" title="columndefinition">columndefinition</a></li><li><a href="#columnnameswithparamslist" title="columnnameswithparamslist">columnnameswithparamslist</a></li><li><a href="#createindex" title="createindex">createindex</a></li><li><a href="#createtable" title="createtable">createtable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RowMovement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="243" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">ENABLE</text> + <rect x="43" y="29" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">DISABLE</text> + <rect x="117" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="13">ROW</text> + <rect x="157" y="1" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="13">MOVEMENT</text> + <path class="line" d="m17 10 h2 m20 0 h4 m42 0 h4 m0 0 h4 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m20 -28 h4 m32 0 h4 m0 0 h4 m62 0 h4 m3 0 h-3"/> + <polygon points="233 10 241 6 241 14"/> + <polygon points="233 10 225 6 225 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#rowmovement" title="RowMovement" shape="rect">RowMovement</a></div> + <div>         ::= ( 'ENABLE' | 'DISABLE' ) 'ROW' 'MOVEMENT'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createtable" title="createtable">createtable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="411" height="129"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="23" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="25">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="103" y="13" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="25">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-double" xlink:title="S_DOUBLE" shape="rect"> + <rect x="103" y="41" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="53">S_DOUBLE</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="103" y="69" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="81">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamewithoutvalue" xlink:title="RelObjectNameWithoutValue" shape="rect"> + <rect x="103" y="97" width="142" height="18" class="nonterminal"/> + <text class="nonterminal" x="107" y="109">RelObjectNameWithoutValue</text></a><rect x="293" y="34" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="297" y="46">,</text> + <rect x="293" y="62" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="297" y="74">=</text> + <rect x="375" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="379" y="25">)</text> + <path class="line" d="m17 22 h2 m0 0 h4 m12 0 h4 m60 0 h4 m48 0 h4 m0 0 h94 m-170 0 h20 m150 0 h20 m-190 0 q10 0 10 10 m170 0 q0 -10 10 -10 m-180 10 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m60 0 h4 m0 0 h82 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m90 0 h4 m0 0 h52 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m142 0 h4 m40 -84 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m8 0 h4 m0 0 h6 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m-252 -49 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m252 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-252 0 h10 m0 0 h242 m-292 21 h20 m292 0 h20 m-332 0 q10 0 10 10 m312 0 q0 -10 10 -10 m-322 10 v85 m312 0 v-85 m-312 85 q0 10 10 10 m292 0 q10 0 10 -10 m-302 10 h10 m0 0 h282 m20 -105 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="401 22 409 18 409 26"/> + <polygon points="401 22 393 18 393 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alist" title="AList" shape="rect">AList</a>    ::= '(' ( ( <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | <a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> | <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#relobjectnamewithoutvalue" title="RelObjectNameWithoutValue" shape="rect">RelObjectNameWithoutValue</a> ) ( ',' | '=' )? )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createparameter" title="createparameter">createparameter</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ColumnsNamesListItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="263" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectName</text></a><rect x="131" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="34">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="151" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="155" y="34">S_LONG</text></a><rect x="207" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="211" y="34">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m80 0 h4 m20 0 h10 m0 0 h86 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v1 m116 0 v-1 m-116 1 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m12 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m23 -21 h-3"/> + <polygon points="253 10 261 6 261 14"/> + <polygon points="253 10 245 6 245 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#columnsnameslistitem" title="ColumnsNamesListItem" shape="rect">ColumnsNamesListItem</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( '(' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#columnsnameslist" title="columnsnameslist">columnsnameslist</a></li><li><a href="#userslist" title="userslist">userslist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ColumnsNamesList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="247" height="49"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslistitem" xlink:title="ColumnsNamesListItem" shape="rect"> + <rect x="63" y="29" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="41">ColumnsNamesListItem</text></a><rect x="63" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">,</text> + <rect x="211" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="215" y="41">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m12 0 h4 m20 0 h4 m120 0 h4 m-148 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m128 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-128 0 h4 m8 0 h4 m0 0 h112 m20 28 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="237 38 245 34 245 42"/> + <polygon points="237 38 229 34 229 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a></div> + <div>         ::= '(' <a href="#columnsnameslistitem" title="ColumnsNamesListItem" shape="rect">ColumnsNamesListItem</a> ( ',' <a href="#columnsnameslistitem" title="ColumnsNamesListItem" shape="rect">ColumnsNamesListItem</a> )* ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#alterview" title="alterview">alterview</a></li><li><a href="#createtable" title="createtable">createtable</a></li><li><a href="#createview" title="createview">createview</a></li><li><a href="#outputclause" title="outputclause">outputclause</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + FuncArgsListItem +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="391" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="131" y="22" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="135" y="34">RelObjectName</text></a><rect x="259" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="34">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="279" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="34">S_LONG</text></a><rect x="335" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="339" y="34">)</text> + <path class="line" d="m17 10 h2 m0 0 h4 m80 0 h4 m20 0 h10 m0 0 h78 m-108 0 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v1 m108 0 v-1 m-108 1 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h4 m80 0 h4 m40 -21 h10 m0 0 h86 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v1 m116 0 v-1 m-116 1 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m12 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m23 -21 h-3"/> + <polygon points="381 10 389 6 389 14"/> + <polygon points="381 10 373 6 373 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#funcargslistitem" title="FuncArgsListItem" shape="rect">FuncArgsListItem</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a>? ( '(' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ')' )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#funcargslist" title="funcargslist">funcargslist</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + FuncArgsList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="253" height="61"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#funcargslistitem" xlink:title="FuncArgsListItem" shape="rect"> + <rect x="83" y="29" width="86" height="18" class="nonterminal"/> + <text class="nonterminal" x="87" y="41">FuncArgsListItem</text></a><rect x="83" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="13">,</text> + <rect x="217" y="29" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="41">)</text> + <path class="line" d="m17 38 h2 m0 0 h4 m12 0 h4 m40 0 h4 m86 0 h4 m-114 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m94 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-94 0 h4 m8 0 h4 m0 0 h78 m-134 28 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h10 m0 0 h124 m20 -21 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="243 38 251 34 251 42"/> + <polygon points="243 38 235 34 235 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#funcargslist" title="FuncArgsList" shape="rect">FuncArgsList</a></div> + <div>         ::= '(' ( <a href="#funcargslistitem" title="FuncArgsListItem" shape="rect">FuncArgsListItem</a> ( ',' <a href="#funcargslistitem" title="FuncArgsListItem" shape="rect">FuncArgsListItem</a> )* )? ')'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#drop" title="drop">drop</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Drop +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="593" height="294"> + <polygon points="9 115 1 111 1 119"/> + <polygon points="17 115 9 111 9 119"/> + <rect x="23" y="106" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="118">DROP</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="85" y="106" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="118">S_IDENTIFIER</text></a><rect x="85" y="134" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="146">TABLE</text> + <rect x="85" y="162" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="174">INDEX</text> + <rect x="85" y="190" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="202">VIEW</text> + <rect x="85" y="218" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="230">SCHEMA</text> + <rect x="85" y="246" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="258">SEQUENCE</text> + <rect x="85" y="274" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="89" y="286">FUNCTION</text> + <rect x="207" y="127" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="211" y="139">IF</text> + <rect x="231" y="127" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="235" y="139">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="299" y="106" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="303" y="118">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#funcargslist" xlink:title="FuncArgsList" shape="rect"> + <rect x="361" y="127" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="365" y="139">FuncArgsList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="475" y="85" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="479" y="97">S_IDENTIFIER</text></a><rect x="475" y="57" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="479" y="69">CASCADE</text> + <rect x="475" y="29" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="479" y="41">RESTRICT</text> + <rect x="475" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="479" y="13">ON</text> + <path class="line" d="m17 115 h2 m0 0 h4 m34 0 h4 m20 0 h4 m74 0 h4 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m36 0 h4 m0 0 h38 m-92 -10 v20 m102 0 v-20 m-102 20 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m36 0 h4 m0 0 h38 m-92 -10 v20 m102 0 v-20 m-102 20 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m34 0 h4 m0 0 h40 m-92 -10 v20 m102 0 v-20 m-102 20 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m46 0 h4 m0 0 h28 m-92 -10 v20 m102 0 v-20 m-102 20 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m56 0 h4 m0 0 h18 m-92 -10 v20 m102 0 v-20 m-102 20 v8 m102 0 v-8 m-102 8 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m56 0 h4 m0 0 h18 m40 -168 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m16 0 h4 m0 0 h4 m40 0 h4 m20 -21 h4 m34 0 h4 m20 0 h10 m0 0 h64 m-94 0 h20 m74 0 h20 m-114 0 q10 0 10 10 m94 0 q0 -10 10 -10 m-104 10 v1 m94 0 v-1 m-94 1 q0 10 10 10 m74 0 q10 0 10 -10 m-84 10 h4 m66 0 h4 m40 -21 h10 m0 0 h72 m-102 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m82 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-82 0 h4 m74 0 h4 m-92 10 l0 -28 q0 -10 10 -10 m92 38 l0 -28 q0 -10 -10 -10 m-82 0 h4 m50 0 h4 m0 0 h24 m-92 10 l0 -28 q0 -10 10 -10 m92 38 l0 -28 q0 -10 -10 -10 m-82 0 h4 m52 0 h4 m0 0 h22 m-92 10 l0 -28 q0 -10 10 -10 m92 38 l0 -28 q0 -10 -10 -10 m-82 0 h4 m22 0 h4 m0 0 h52 m23 105 h-3"/> + <polygon points="583 115 591 111 591 119"/> + <polygon points="583 115 575 111 575 119"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#drop" title="Drop" shape="rect">Drop</a>     ::= 'DROP' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | 'TABLE' | 'INDEX' | 'VIEW' | 'SCHEMA' | 'SEQUENCE' | 'FUNCTION' ) ( 'IF' 'EXISTS' + )? <a href="#table" title="Table" shape="rect">Table</a> <a href="#funcargslist" title="FuncArgsList" shape="rect">FuncArgsList</a>? ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | 'CASCADE' | 'RESTRICT' | 'ON' )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Truncate +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="409" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">TRUNCATE</text> + <rect x="107" y="22" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="34">TABLE</text> + <rect x="191" y="22" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="34">ONLY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="253" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="257" y="13">Table</text></a><rect x="315" y="22" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="319" y="34">CASCADE</text> + <path class="line" d="m17 10 h2 m0 0 h4 m56 0 h4 m20 0 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -21 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m20 -21 h4 m34 0 h4 m20 0 h10 m0 0 h48 m-78 0 h20 m58 0 h20 m-98 0 q10 0 10 10 m78 0 q0 -10 10 -10 m-88 10 v1 m78 0 v-1 m-78 1 q0 10 10 10 m58 0 q10 0 10 -10 m-68 10 h4 m50 0 h4 m23 -21 h-3"/> + <polygon points="399 10 407 6 407 14"/> + <polygon points="399 10 391 6 391 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#truncate" title="Truncate" shape="rect">Truncate</a> ::= 'TRUNCATE' 'TABLE'? 'ONLY'? <a href="#table" title="Table" shape="rect">Table</a> 'CASCADE'?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterExpressionColumnDataType +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="419" height="63"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="22" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="34">RelObjectName</text></a><rect x="131" y="43" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="55">TYPE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#coldatatype" xlink:title="ColDataType" shape="rect"> + <rect x="189" y="22" width="68" height="18" class="nonterminal"/> + <text class="nonterminal" x="193" y="34">ColDataType</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#createparameter" xlink:title="CreateParameter" shape="rect"> + <rect x="285" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="289" y="13">CreateParameter</text></a><path class="line" d="m17 31 h2 m0 0 h4 m80 0 h4 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -21 h4 m68 0 h4 m20 0 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m23 21 h-3"/> + <polygon points="409 31 417 27 417 35"/> + <polygon points="409 31 401 27 401 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'TYPE'? <a href="#coldatatype" title="ColDataType" shape="rect">ColDataType</a> <a href="#createparameter" title="CreateParameter" shape="rect">CreateParameter</a>*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterExpressionColumnDropNotNull +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="285" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectName</text></a><rect x="111" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="115" y="13">DROP</text> + <rect x="173" y="22" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="34">NOT</text> + <rect x="229" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="233" y="13">NULL</text> + <path class="line" d="m17 10 h2 m0 0 h4 m80 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m32 0 h4 m3 0 h-3"/> + <polygon points="275 10 283 6 283 14"/> + <polygon points="275 10 267 6 267 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterexpressioncolumndropnotnull" title="AlterExpressionColumnDropNotNull" shape="rect">AlterExpressionColumnDropNotNull</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'DROP' 'NOT'? 'NULL'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterExpressionColumnDropDefault +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="225" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="1" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectName</text></a><rect x="111" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="115" y="13">DROP</text> + <rect x="153" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="157" y="13">DEFAULT</text> + <path class="line" d="m17 10 h2 m0 0 h4 m80 0 h4 m0 0 h4 m34 0 h4 m0 0 h4 m48 0 h4 m3 0 h-3"/> + <polygon points="215 10 223 6 223 14"/> + <polygon points="215 10 207 6 207 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterexpressioncolumndropdefault" title="AlterExpressionColumnDropDefault" shape="rect">AlterExpressionColumnDropDefault</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'DROP' 'DEFAULT'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterExpressionConstraintState +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="309" height="178"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="103" y="34" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="46">NOT</text> + <rect x="159" y="13" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="163" y="25">DEFERRABLE</text> + <rect x="83" y="62" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="74">VALIDATE</text> + <rect x="83" y="90" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="102">NOVALIDATE</text> + <rect x="83" y="118" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="130">ENABLE</text> + <rect x="83" y="146" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="158">DISABLE</text> + <path class="line" d="m17 22 h2 m80 0 h10 m0 0 h26 m-56 0 h20 m36 0 h20 m-76 0 q10 0 10 10 m56 0 q0 -10 10 -10 m-66 10 v1 m56 0 v-1 m-56 1 q0 10 10 10 m36 0 q10 0 10 -10 m-46 10 h4 m28 0 h4 m20 -21 h4 m66 0 h4 m-170 0 h20 m150 0 h20 m-190 0 q10 0 10 10 m170 0 q0 -10 10 -10 m-180 10 v29 m170 0 v-29 m-170 29 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m52 0 h4 m0 0 h90 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m68 0 h4 m0 0 h74 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m42 0 h4 m0 0 h100 m-160 -10 v20 m170 0 v-20 m-170 20 v8 m170 0 v-8 m-170 8 q0 10 10 10 m150 0 q10 0 10 -10 m-160 10 h4 m46 0 h4 m0 0 h96 m-190 -133 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m190 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-190 0 h10 m0 0 h180 m-230 21 h20 m230 0 h20 m-270 0 q10 0 10 10 m250 0 q0 -10 10 -10 m-260 10 v134 m250 0 v-134 m-250 134 q0 10 10 10 m230 0 q10 0 10 -10 m-240 10 h10 m0 0 h220 m23 -154 h-3"/> + <polygon points="299 22 307 18 307 26"/> + <polygon points="299 22 291 18 291 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterexpressionconstraintstate" title="AlterExpressionConstraintState" shape="rect">AlterExpressionConstraintState</a></div> + <div>         ::= ( 'NOT'? 'DEFERRABLE' | 'VALIDATE' | 'NOVALIDATE' | 'ENABLE' | 'DISABLE' + )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterExpression +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="1485" height="1239"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="63" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">ADD</text> + <rect x="63" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="41">ALTER</text> + <rect x="63" y="57" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="69">MODIFY</text> + <rect x="197" y="1" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="13">PRIMARY</text> + <rect x="255" y="1" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="259" y="13">KEY</text> + <rect x="217" y="29" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="41">KEY</text> + <rect x="217" y="57" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="221" y="69">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="281" y="29" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="285" y="41">RelObjectName</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="389" y="1" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="393" y="13">ColumnsNamesList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressionconstraintstate" xlink:title="AlterExpressionConstraintState" shape="rect"> + <rect x="495" y="1" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="499" y="13">AlterExpressionConstraintState</text></a><rect x="177" y="85" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="181" y="97">UNIQUE</text> + <rect x="269" y="106" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="273" y="118">KEY</text> + <rect x="269" y="134" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="273" y="146">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="353" y="106" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="357" y="118">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="353" y="134" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="357" y="146">S_QUOTED_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="521" y="85" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="525" y="97">ColumnsNamesList</text></a><rect x="693" y="22" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="697" y="34">USING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="739" y="22" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="743" y="34">RelObjectName</text></a><rect x="177" y="211" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="181" y="223">COLUMN</text> + <rect x="273" y="190" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="277" y="202">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndatatype" xlink:title="AlterExpressionColumnDataType" shape="rect"> + <rect x="313" y="190" width="158" height="18" class="nonterminal"/> + <text class="nonterminal" x="317" y="202">AlterExpressionColumnDataType</text></a><rect x="313" y="162" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="317" y="174">,</text> + <rect x="499" y="190" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="503" y="202">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndatatype" xlink:title="AlterExpressionColumnDataType" shape="rect"> + <rect x="273" y="218" width="158" height="18" class="nonterminal"/> + <text class="nonterminal" x="277" y="230">AlterExpressionColumnDataType</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndropnotnull" xlink:title="AlterExpressionColumnDropNotNull" shape="rect"> + <rect x="273" y="246" width="168" height="18" class="nonterminal"/> + <text class="nonterminal" x="277" y="258">AlterExpressionColumnDropNotNull</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndropdefault" xlink:title="AlterExpressionColumnDropDefault" shape="rect"> + <rect x="273" y="274" width="168" height="18" class="nonterminal"/> + <text class="nonterminal" x="277" y="286">AlterExpressionColumnDropDefault</text></a><rect x="157" y="330" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="342">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndatatype" xlink:title="AlterExpressionColumnDataType" shape="rect"> + <rect x="197" y="330" width="158" height="18" class="nonterminal"/> + <text class="nonterminal" x="201" y="342">AlterExpressionColumnDataType</text></a><rect x="197" y="302" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="314">,</text> + <rect x="383" y="330" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="387" y="342">)</text> + <rect x="157" y="358" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="370">FOREIGN</text> + <rect x="215" y="358" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="370">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="247" y="358" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="251" y="370">ColumnsNamesList</text></a><rect x="353" y="358" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="357" y="370">REFERENCES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="427" y="358" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="431" y="370">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="489" y="379" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="493" y="391">ColumnsNamesList</text></a><rect x="635" y="379" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="639" y="391">ON</text> + <rect x="685" y="379" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="689" y="391">DELETE</text> + <rect x="685" y="407" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="689" y="419">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="757" y="379" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="761" y="391">Action</text></a><rect x="841" y="379" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="845" y="391">ON</text> + <rect x="891" y="379" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="895" y="391">DELETE</text> + <rect x="891" y="407" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="895" y="419">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="963" y="379" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="967" y="391">Action</text></a><rect x="157" y="435" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="447">CONSTRAINT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="233" y="435" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="237" y="447">RelObjectName</text></a><rect x="361" y="435" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="447">FOREIGN</text> + <rect x="419" y="435" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="423" y="447">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="451" y="435" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="455" y="447">ColumnsNamesList</text></a><rect x="557" y="435" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="561" y="447">REFERENCES</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="631" y="435" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="635" y="447">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="693" y="456" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="697" y="468">ColumnsNamesList</text></a><rect x="839" y="456" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="843" y="468">ON</text> + <rect x="889" y="456" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="893" y="468">DELETE</text> + <rect x="889" y="484" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="893" y="496">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="961" y="456" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="965" y="468">Action</text></a><rect x="1045" y="456" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1049" y="468">ON</text> + <rect x="1095" y="456" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1099" y="468">DELETE</text> + <rect x="1095" y="484" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="1099" y="496">UPDATE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#action" xlink:title="Action" shape="rect"> + <rect x="1167" y="456" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="1171" y="468">Action</text></a><rect x="361" y="512" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="524">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="393" y="512" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="397" y="524">ColumnsNamesList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressionconstraintstate" xlink:title="AlterExpressionConstraintState" shape="rect"> + <rect x="1251" y="435" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="1255" y="447">AlterExpressionConstraintState</text></a><rect x="361" y="540" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="552">PRIMARY</text> + <rect x="419" y="540" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="423" y="552">KEY</text> + <rect x="361" y="568" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="365" y="580">UNIQUE</text> + <rect x="433" y="589" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="437" y="601">KEY</text> + <rect x="433" y="617" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="437" y="629">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="517" y="540" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="521" y="552">ColumnsNamesList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressionconstraintstate" xlink:title="AlterExpressionConstraintState" shape="rect"> + <rect x="623" y="540" width="150" height="18" class="nonterminal"/> + <text class="nonterminal" x="627" y="552">AlterExpressionConstraintState</text></a><rect x="801" y="561" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="805" y="573">USING</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="847" y="561" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="851" y="573">RelObjectName</text></a><rect x="341" y="659" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="345" y="671">CHECK</text> + <rect x="427" y="659" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="431" y="671">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#expression" xlink:title="Expression" shape="rect"> + <rect x="447" y="659" width="60" height="18" class="nonterminal"/> + <text class="nonterminal" x="451" y="671">Expression</text></a><rect x="515" y="659" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="519" y="671">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="157" y="701" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="161" y="713">RelObjectName</text></a><rect x="245" y="701" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="249" y="713">COMMENT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="309" y="701" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="313" y="713">S_CHAR_LITERAL</text></a><rect x="43" y="729" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="741">CHANGE</text> + <rect x="117" y="750" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="121" y="762">COLUMN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="213" y="729" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="217" y="741">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="213" y="757" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="217" y="769">S_QUOTED_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpressioncolumndatatype" xlink:title="AlterExpressionColumnDataType" shape="rect"> + <rect x="361" y="729" width="158" height="18" class="nonterminal"/> + <text class="nonterminal" x="365" y="741">AlterExpressionColumnDataType</text></a><rect x="43" y="785" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="797">DROP</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="125" y="785" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="129" y="797">ColumnsNamesList</text></a><rect x="145" y="834" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="846">COLUMN</text> + <rect x="241" y="834" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="245" y="846">IF</text> + <rect x="265" y="834" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="269" y="846">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="353" y="813" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="357" y="825">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="353" y="841" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="357" y="853">S_QUOTED_IDENTIFIER</text></a><rect x="541" y="806" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="545" y="818">INVALIDATE</text> + <rect x="651" y="806" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="655" y="818">CASCADE</text> + <rect x="729" y="827" width="74" height="18" class="terminal" rx="4"/> + <text class="terminal" x="733" y="839">CONSTRAINTS</text> + <rect x="105" y="869" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="109" y="881">INDEX</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="169" y="869" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="173" y="881">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="169" y="897" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="173" y="909">S_QUOTED_IDENTIFIER</text></a><rect x="145" y="925" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="937">UNIQUE</text> + <rect x="145" y="953" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="965">FOREIGN</text> + <rect x="203" y="953" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="207" y="965">KEY</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslist" xlink:title="ColumnsNamesList" shape="rect"> + <rect x="255" y="925" width="98" height="18" class="nonterminal"/> + <text class="nonterminal" x="259" y="937">ColumnsNamesList</text></a><rect x="125" y="981" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="993">PRIMARY</text> + <rect x="183" y="981" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="993">KEY</text> + <rect x="125" y="1009" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="129" y="1021">CONSTRAINT</text> + <rect x="221" y="1030" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="225" y="1042">IF</text> + <rect x="245" y="1030" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="249" y="1042">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="333" y="1009" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="337" y="1021">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="333" y="1037" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="337" y="1049">S_QUOTED_IDENTIFIER</text></a><rect x="521" y="946" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="525" y="958">CASCADE</text> + <rect x="521" y="974" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="525" y="986">RESTRICT</text> + <rect x="43" y="1065" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1077">ALGORITHM</text> + <rect x="135" y="1086" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="139" y="1098">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="177" y="1065" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="181" y="1077">RelObjectName</text></a><rect x="43" y="1114" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1126">RENAME</text> + <rect x="137" y="1156" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="141" y="1168">COLUMN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="233" y="1135" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="237" y="1147">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="233" y="1163" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="237" y="1175">S_QUOTED_IDENTIFIER</text></a><rect x="401" y="1114" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="405" y="1126">TO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="449" y="1114" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="453" y="1126">S_IDENTIFIER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-quoted-identifier" xlink:title="S_QUOTED_IDENTIFIER" shape="rect"> + <rect x="449" y="1142" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="453" y="1154">S_QUOTED_IDENTIFIER</text></a><rect x="43" y="1191" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="1203">COMMENT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="107" y="1191" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="111" y="1203">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#capturerest" xlink:title="captureRest" shape="rect"> + <rect x="43" y="1219" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="1231">captureRest</text></a><path class="line" d="m17 10 h2 m40 0 h4 m28 0 h4 m0 0 h18 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m36 0 h4 m0 0 h10 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m80 -56 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h82 m-192 0 h20 m172 0 h20 m-212 0 q10 0 10 10 m192 0 q0 -10 10 -10 m-202 10 v8 m192 0 v-8 m-192 8 q0 10 10 10 m172 0 q10 0 10 -10 m-162 10 h4 m24 0 h4 m0 0 h12 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m20 -28 h4 m80 0 h4 m20 -28 h4 m98 0 h4 m0 0 h4 m150 0 h4 m-496 0 h20 m476 0 h20 m-516 0 q10 0 10 10 m496 0 q0 -10 10 -10 m-506 10 v64 m496 0 v-64 m-496 64 q0 10 10 10 m476 0 q10 0 10 -10 m-486 10 h4 m44 0 h4 m20 0 h10 m0 0 h242 m-272 0 h20 m252 0 h20 m-292 0 q10 0 10 10 m272 0 q0 -10 10 -10 m-282 10 v1 m272 0 v-1 m-272 1 q0 10 10 10 m252 0 q10 0 10 -10 m-242 10 h4 m24 0 h4 m0 0 h12 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -28 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -49 h4 m98 0 h4 m0 0 h26 m40 -84 h10 m0 0 h124 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h4 m38 0 h4 m0 0 h4 m80 0 h4 m20 -21 h582 m-1292 0 h20 m1272 0 h20 m-1312 0 q10 0 10 10 m1292 0 q0 -10 10 -10 m-1302 10 v169 m1292 0 v-169 m-1292 169 q0 10 10 10 m1272 0 q10 0 10 -10 m-1262 10 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m40 -21 h4 m12 0 h4 m20 0 h4 m158 0 h4 m-186 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m166 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-166 0 h4 m8 0 h4 m0 0 h150 m20 28 h4 m12 0 h4 m-266 0 h20 m246 0 h20 m-286 0 q10 0 10 10 m266 0 q0 -10 10 -10 m-276 10 v8 m266 0 v-8 m-266 8 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h4 m158 0 h4 m0 0 h80 m-256 -10 v20 m266 0 v-20 m-266 20 v8 m266 0 v-8 m-266 8 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h4 m168 0 h4 m0 0 h70 m-256 -10 v20 m266 0 v-20 m-266 20 v8 m266 0 v-8 m-266 8 q0 10 10 10 m246 0 q10 0 10 -10 m-256 10 h4 m168 0 h4 m0 0 h70 m20 -84 h890 m-1282 -10 v20 m1292 0 v-20 m-1292 20 v120 m1292 0 v-120 m-1292 120 q0 10 10 10 m1272 0 q10 0 10 -10 m-1282 10 h4 m12 0 h4 m20 0 h4 m158 0 h4 m-186 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m166 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-166 0 h4 m8 0 h4 m0 0 h150 m20 28 h4 m12 0 h4 m0 0 h1026 m-1282 -10 v20 m1292 0 v-20 m-1292 20 v8 m1292 0 v-8 m-1292 8 q0 10 10 10 m1272 0 q10 0 10 -10 m-1282 10 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h4 m98 0 h4 m0 0 h4 m66 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h96 m-126 0 h20 m106 0 h20 m-146 0 q10 0 10 10 m126 0 q0 -10 10 -10 m-136 10 v1 m126 0 v-1 m-126 1 q0 10 10 10 m106 0 q10 0 10 -10 m-116 10 h4 m98 0 h4 m40 -21 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m40 -21 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m20 -21 h402 m-1282 -10 v20 m1292 0 v-20 m-1292 20 v57 m1292 0 v-57 m-1292 57 q0 10 10 10 m1272 0 q10 0 10 -10 m-1282 10 h4 m68 0 h4 m0 0 h4 m80 0 h4 m40 0 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h4 m98 0 h4 m0 0 h4 m66 0 h4 m0 0 h4 m34 0 h4 m20 0 h10 m0 0 h96 m-126 0 h20 m106 0 h20 m-146 0 q10 0 10 10 m126 0 q0 -10 10 -10 m-136 10 v1 m126 0 v-1 m-126 1 q0 10 10 10 m106 0 q10 0 10 -10 m-116 10 h4 m98 0 h4 m40 -21 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m40 -21 h10 m0 0 h156 m-186 0 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h4 m22 0 h4 m20 0 h4 m40 0 h4 m0 0 h4 m-72 0 h20 m52 0 h20 m-92 0 q10 0 10 10 m72 0 q0 -10 10 -10 m-82 10 v8 m72 0 v-8 m-72 8 q0 10 10 10 m52 0 q10 0 10 -10 m-62 10 h4 m44 0 h4 m20 -28 h4 m36 0 h4 m-870 -21 h20 m870 0 h20 m-910 0 q10 0 10 10 m890 0 q0 -10 10 -10 m-900 10 v57 m890 0 v-57 m-890 57 q0 10 10 10 m870 0 q10 0 10 -10 m-880 10 h4 m24 0 h4 m0 0 h4 m98 0 h4 m0 0 h732 m20 -77 h4 m150 0 h4 m-1088 0 h20 m1068 0 h20 m-1108 0 q10 0 10 10 m1088 0 q0 -10 10 -10 m-1098 10 v85 m1088 0 v-85 m-1088 85 q0 10 10 10 m1068 0 q10 0 10 -10 m-1058 10 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h46 m-156 0 h20 m136 0 h20 m-176 0 q10 0 10 10 m156 0 q0 -10 10 -10 m-166 10 v8 m156 0 v-8 m-156 8 q0 10 10 10 m136 0 q10 0 10 -10 m-146 10 h4 m44 0 h4 m20 0 h10 m0 0 h34 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v1 m64 0 v-1 m-64 1 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m24 0 h4 m0 0 h12 m-54 -10 v20 m64 0 v-20 m-64 20 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m40 -77 h4 m98 0 h4 m0 0 h4 m150 0 h4 m20 0 h10 m0 0 h124 m-154 0 h20 m134 0 h20 m-174 0 q10 0 10 10 m154 0 q0 -10 10 -10 m-164 10 v1 m154 0 v-1 m-154 1 q0 10 10 10 m134 0 q10 0 10 -10 m-144 10 h4 m38 0 h4 m0 0 h4 m80 0 h4 m20 -21 h454 m-1078 -10 v20 m1088 0 v-20 m-1088 20 v99 m1088 0 v-99 m-1088 99 q0 10 10 10 m1068 0 q10 0 10 -10 m-1078 10 h4 m38 0 h4 m40 0 h4 m12 0 h4 m0 0 h4 m60 0 h4 m0 0 h4 m12 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m108 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-108 0 h10 m0 0 h98 m-148 21 h20 m148 0 h20 m-188 0 q10 0 10 10 m168 0 q0 -10 10 -10 m-178 10 v1 m168 0 v-1 m-168 1 q0 10 10 10 m148 0 q10 0 10 -10 m-158 10 h10 m0 0 h138 m20 -21 h834 m-1262 -234 v20 m1292 0 v-20 m-1292 20 v246 m1292 0 v-246 m-1292 246 q0 10 10 10 m1272 0 q10 0 10 -10 m-1282 10 h4 m80 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m90 0 h4 m0 0 h1022 m-1406 -700 h20 m1406 0 h20 m-1446 0 q10 0 10 10 m1426 0 q0 -10 10 -10 m-1436 10 v708 m1426 0 v-708 m-1426 708 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m46 0 h4 m20 0 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m40 -21 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m20 -28 h4 m158 0 h4 m0 0 h922 m-1416 -10 v20 m1426 0 v-20 m-1426 20 v36 m1426 0 v-36 m-1426 36 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m34 0 h4 m40 0 h4 m98 0 h4 m0 0 h270 m-396 0 h20 m376 0 h20 m-416 0 q10 0 10 10 m396 0 q0 -10 10 -10 m-406 10 v8 m396 0 v-8 m-396 8 q0 10 10 10 m376 0 q10 0 10 -10 m-366 10 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m40 -21 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m16 0 h4 m0 0 h4 m40 0 h4 m40 -21 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m60 -56 h10 m0 0 h60 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v1 m90 0 v-1 m-90 1 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m62 0 h4 m40 -21 h10 m0 0 h170 m-200 0 h20 m180 0 h20 m-220 0 q10 0 10 10 m200 0 q0 -10 10 -10 m-210 10 v1 m200 0 v-1 m-200 1 q0 10 10 10 m180 0 q10 0 10 -10 m-190 10 h4 m50 0 h4 m20 0 h10 m0 0 h72 m-102 0 h20 m82 0 h20 m-122 0 q10 0 10 10 m102 0 q0 -10 10 -10 m-112 10 v1 m102 0 v-1 m-102 1 q0 10 10 10 m82 0 q10 0 10 -10 m-92 10 h4 m74 0 h4 m-726 -42 h20 m746 0 h20 m-786 0 q10 0 10 10 m766 0 q0 -10 10 -10 m-776 10 v64 m766 0 v-64 m-766 64 q0 10 10 10 m746 0 q10 0 10 -10 m-756 10 h4 m36 0 h4 m20 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m20 -28 h534 m-756 -10 v20 m766 0 v-20 m-766 20 v36 m766 0 v-36 m-766 36 q0 10 10 10 m746 0 q10 0 10 -10 m-716 10 h4 m44 0 h4 m0 0 h38 m-110 0 h20 m90 0 h20 m-130 0 q10 0 10 10 m110 0 q0 -10 10 -10 m-120 10 v8 m110 0 v-8 m-110 8 q0 10 10 10 m90 0 q10 0 10 -10 m-100 10 h4 m50 0 h4 m0 0 h4 m24 0 h4 m20 -28 h4 m98 0 h4 m0 0 h120 m-376 0 h20 m356 0 h20 m-396 0 q10 0 10 10 m376 0 q0 -10 10 -10 m-386 10 v36 m376 0 v-36 m-376 36 q0 10 10 10 m356 0 q10 0 10 -10 m-366 10 h4 m50 0 h4 m0 0 h4 m24 0 h4 m0 0 h266 m-366 -10 v20 m376 0 v-20 m-376 20 v8 m376 0 v-8 m-376 8 q0 10 10 10 m356 0 q10 0 10 -10 m-366 10 h4 m68 0 h4 m20 0 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m16 0 h4 m0 0 h4 m40 0 h4 m40 -21 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m60 -112 h10 m0 0 h50 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v1 m80 0 v-1 m-80 1 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m50 0 h4 m0 0 h2 m-70 -10 v20 m80 0 v-20 m-80 20 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -49 h250 m20 -140 h578 m-1416 -10 v20 m1426 0 v-20 m-1426 20 v260 m1426 0 v-260 m-1426 260 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m64 0 h4 m20 0 h10 m0 0 h12 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v1 m42 0 v-1 m-42 1 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m14 0 h4 m20 -21 h4 m80 0 h4 m0 0 h1184 m-1416 -10 v20 m1426 0 v-20 m-1426 20 v29 m1426 0 v-29 m-1426 29 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m46 0 h4 m20 0 h10 m0 0 h254 m-284 0 h20 m264 0 h20 m-304 0 q10 0 10 10 m284 0 q0 -10 10 -10 m-294 10 v1 m284 0 v-1 m-284 1 q0 10 10 10 m264 0 q10 0 10 -10 m-254 10 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m40 -21 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m40 -49 h4 m20 0 h4 m20 0 h4 m74 0 h4 m0 0 h46 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m120 0 h4 m20 -28 h852 m-1416 -10 v20 m1426 0 v-20 m-1426 20 v57 m1426 0 v-57 m-1426 57 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m56 0 h4 m0 0 h4 m90 0 h4 m0 0 h1244 m-1416 -10 v20 m1426 0 v-20 m-1426 20 v8 m1426 0 v-8 m-1426 8 q0 10 10 10 m1406 0 q10 0 10 -10 m-1416 10 h4 m64 0 h4 m0 0 h1334 m23 -1218 h-3"/> + <polygon points="1475 10 1483 6 1483 14"/> + <polygon points="1475 10 1467 6 1467 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#alterexpression" title="AlterExpression" shape="rect">AlterExpression</a></div> + <div>         ::= ( 'ADD' | 'ALTER' | 'MODIFY' ) ( ( ( 'PRIMARY' 'KEY' | ( 'KEY' | 'INDEX' + ) <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ) <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> <a href="#alterexpressionconstraintstate" title="AlterExpressionConstraintState" shape="rect">AlterExpressionConstraintState</a> | 'UNIQUE' ( ( 'KEY' | 'INDEX' ) ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )? <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> ) ( 'USING' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )? | 'COLUMN'? ( '(' <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a> ( ',' <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a> )* ')' | <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a> | <a href="#alterexpressioncolumndropnotnull" title="AlterExpressionColumnDropNotNull" shape="rect">AlterExpressionColumnDropNotNull</a> | <a href="#alterexpressioncolumndropdefault" title="AlterExpressionColumnDropDefault" shape="rect">AlterExpressionColumnDropDefault</a> ) | '(' <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a> ( ',' <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a> )* ')' | 'FOREIGN' 'KEY' <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> 'REFERENCES' <a href="#table" title="Table" shape="rect">Table</a> <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a>? ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? | 'CONSTRAINT' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( ( 'FOREIGN' 'KEY' <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> 'REFERENCES' <a href="#table" title="Table" shape="rect">Table</a> <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a>? ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? ( 'ON' ( 'DELETE' | 'UPDATE' ) <a href="#action" title="Action" shape="rect">Action</a> )? | 'KEY' <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> ) <a href="#alterexpressionconstraintstate" title="AlterExpressionConstraintState" shape="rect">AlterExpressionConstraintState</a> | ( 'PRIMARY' 'KEY' | 'UNIQUE' ( 'KEY' | 'INDEX' )? ) <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> <a href="#alterexpressionconstraintstate" title="AlterExpressionConstraintState" shape="rect">AlterExpressionConstraintState</a> ( 'USING' <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> )? | 'CHECK' ( '(' <a href="#expression" title="Expression" shape="rect">Expression</a> ')' )* ) | <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> 'COMMENT' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> )</div> + <div>           | 'CHANGE' 'COLUMN'? ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) <a href="#alterexpressioncolumndatatype" title="AlterExpressionColumnDataType" shape="rect">AlterExpressionColumnDataType</a></div> + <div>           | 'DROP' ( ( <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> | 'COLUMN'? ( 'IF' 'EXISTS' )? ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ) 'INVALIDATE'? ( 'CASCADE' 'CONSTRAINTS'? )? | 'INDEX' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) | ( ( 'UNIQUE' | 'FOREIGN' 'KEY' ) <a href="#columnsnameslist" title="ColumnsNamesList" shape="rect">ColumnsNamesList</a> | 'PRIMARY' 'KEY' | 'CONSTRAINT' ( 'IF' 'EXISTS' )? ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) ) ( 'CASCADE' | 'RESTRICT' )? )</div> + <div>           | 'ALGORITHM' '='? <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a></div> + <div>           | 'RENAME' ( 'COLUMN'? ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> ) )? 'TO' ( <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | <a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a> )</div> + <div>           | 'COMMENT' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a></div> + <div>           | <a href="#capturerest" title="captureRest" shape="rect">captureRest</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#altertable" title="altertable">altertable</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterTable +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="489" height="70"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">ALTER</text> + <rect x="67" y="29" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="41">TABLE</text> + <rect x="131" y="50" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="62">ONLY</text> + <rect x="213" y="50" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="217" y="62">IF</text> + <rect x="237" y="50" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="241" y="62">EXISTS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="305" y="29" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="309" y="41">Table</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#alterexpression" xlink:title="AlterExpression" shape="rect"> + <rect x="367" y="29" width="78" height="18" class="nonterminal"/> + <text class="nonterminal" x="371" y="41">AlterExpression</text></a><rect x="367" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="371" y="13">,</text> + <path class="line" d="m17 38 h2 m0 0 h4 m36 0 h4 m0 0 h4 m36 0 h4 m20 0 h10 m0 0 h32 m-62 0 h20 m42 0 h20 m-82 0 q10 0 10 10 m62 0 q0 -10 10 -10 m-72 10 v1 m62 0 v-1 m-62 1 q0 10 10 10 m42 0 q10 0 10 -10 m-52 10 h4 m34 0 h4 m40 -21 h10 m0 0 h62 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v1 m92 0 v-1 m-92 1 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m16 0 h4 m0 0 h4 m40 0 h4 m20 -21 h4 m34 0 h4 m20 0 h4 m78 0 h4 m-106 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m86 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-86 0 h4 m8 0 h4 m0 0 h70 m23 28 h-3"/> + <polygon points="479 38 487 34 487 42"/> + <polygon points="479 38 471 34 471 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#altertable" title="AlterTable" shape="rect">AlterTable</a></div> + <div>         ::= 'ALTER' 'TABLE' 'ONLY'? ( 'IF' 'EXISTS' )? <a href="#table" title="Table" shape="rect">Table</a> <a href="#alterexpression" title="AlterExpression" shape="rect">AlterExpression</a> ( ',' <a href="#alterexpression" title="AlterExpression" shape="rect">AlterExpression</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterSession +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="607" height="518"> + <polygon points="9 143 1 139 1 147"/> + <polygon points="17 143 9 139 9 147"/> + <rect x="23" y="134" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="146">ALTER</text> + <rect x="67" y="134" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="146">SESSION</text> + <rect x="145" y="134" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="146">ADVISE</text> + <rect x="215" y="134" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="146">COMMIT</text> + <rect x="215" y="162" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="174">ROLLBACK</text> + <rect x="215" y="190" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="202">NOTHING</text> + <rect x="145" y="218" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="230">CLOSE</text> + <rect x="191" y="218" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="230">DATABASE</text> + <rect x="255" y="218" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="259" y="230">LINK</text> + <rect x="165" y="246" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="258">ENABLE</text> + <rect x="165" y="274" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="286">DISABLE</text> + <rect x="259" y="246" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="258">COMMIT</text> + <rect x="315" y="246" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="319" y="258">IN</text> + <rect x="341" y="246" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="345" y="258">PROCEDURE</text> + <rect x="259" y="274" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="286">GUARD</text> + <rect x="259" y="302" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="314">PARALLEL</text> + <rect x="339" y="302" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="343" y="314">DML</text> + <rect x="339" y="330" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="343" y="342">DDL</text> + <rect x="339" y="358" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="343" y="370">QUERY</text> + <rect x="259" y="386" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="398">RESUMABLE</text> + <rect x="145" y="414" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="426">FORCE</text> + <rect x="191" y="414" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="195" y="426">PARALLEL</text> + <rect x="271" y="414" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="275" y="426">DML</text> + <rect x="271" y="442" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="275" y="454">DDL</text> + <rect x="271" y="470" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="275" y="482">QUERY</text> + <rect x="145" y="498" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="149" y="510">SET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="473" y="113" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="477" y="125">S_CHAR_LITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="473" y="85" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="477" y="97">S_IDENTIFIER</text></a><rect x="473" y="57" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="477" y="69">=</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="473" y="29" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="477" y="41">S_LONG</text></a><rect x="473" y="1" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="477" y="13">PARALLEL</text> + <path class="line" d="m17 143 h2 m0 0 h4 m36 0 h4 m0 0 h4 m50 0 h4 m20 0 h4 m42 0 h4 m20 0 h4 m48 0 h4 m0 0 h8 m-84 0 h20 m64 0 h20 m-104 0 q10 0 10 10 m84 0 q0 -10 10 -10 m-94 10 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m56 0 h4 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m52 0 h4 m0 0 h4 m20 -56 h134 m-308 0 h20 m288 0 h20 m-328 0 q10 0 10 10 m308 0 q0 -10 10 -10 m-318 10 v64 m308 0 v-64 m-308 64 q0 10 10 10 m288 0 q10 0 10 -10 m-298 10 h4 m38 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m30 0 h4 m0 0 h140 m-298 -10 v20 m308 0 v-20 m-308 20 v8 m308 0 v-8 m-308 8 q0 10 10 10 m288 0 q10 0 10 -10 m-278 10 h4 m42 0 h4 m0 0 h4 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m40 -28 h4 m48 0 h4 m0 0 h4 m18 0 h4 m0 0 h4 m64 0 h4 m-174 0 h20 m154 0 h20 m-194 0 q10 0 10 10 m174 0 q0 -10 10 -10 m-184 10 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m40 0 h4 m0 0 h106 m-164 -10 v20 m174 0 v-20 m-174 20 v8 m174 0 v-8 m-174 8 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m52 0 h4 m20 0 h4 m28 0 h4 m0 0 h12 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m26 0 h4 m0 0 h14 m-58 -10 v20 m68 0 v-20 m-68 20 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m20 -56 h6 m-164 -10 v20 m174 0 v-20 m-174 20 v64 m174 0 v-64 m-174 64 q0 10 10 10 m154 0 q10 0 10 -10 m-164 10 h4 m62 0 h4 m0 0 h84 m-278 -150 v20 m308 0 v-20 m-308 20 v148 m308 0 v-148 m-308 148 q0 10 10 10 m288 0 q10 0 10 -10 m-298 10 h4 m38 0 h4 m0 0 h4 m52 0 h4 m20 0 h4 m28 0 h4 m0 0 h12 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m26 0 h4 m0 0 h14 m-58 -10 v20 m68 0 v-20 m-68 20 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m20 -56 h94 m-298 -10 v20 m308 0 v-20 m-308 20 v64 m308 0 v-64 m-308 64 q0 10 10 10 m288 0 q10 0 10 -10 m-298 10 h4 m24 0 h4 m0 0 h256 m40 -364 h10 m0 0 h88 m-118 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m98 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-98 0 h4 m90 0 h4 m-108 10 l0 -28 q0 -10 10 -10 m108 38 l0 -28 q0 -10 -10 -10 m-98 0 h4 m74 0 h4 m0 0 h16 m-108 10 l0 -28 q0 -10 10 -10 m108 38 l0 -28 q0 -10 -10 -10 m-98 0 h4 m14 0 h4 m0 0 h76 m-108 10 l0 -28 q0 -10 10 -10 m108 38 l0 -28 q0 -10 -10 -10 m-98 0 h4 m48 0 h4 m0 0 h42 m-108 10 l0 -28 q0 -10 10 -10 m108 38 l0 -28 q0 -10 -10 -10 m-98 0 h4 m52 0 h4 m0 0 h38 m23 133 h-3"/> + <polygon points="597 143 605 139 605 147"/> + <polygon points="597 143 589 139 589 147"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#altersession" title="AlterSession" shape="rect">AlterSession</a></div> + <div>         ::= 'ALTER' 'SESSION' ( 'ADVISE' ( 'COMMIT' | 'ROLLBACK' | 'NOTHING' ) | + 'CLOSE' 'DATABASE' 'LINK' | ( 'ENABLE' | 'DISABLE' ) ( 'COMMIT' 'IN' 'PROCEDURE' | + 'GUARD' | 'PARALLEL' ( 'DML' | 'DDL' | 'QUERY' ) | 'RESUMABLE' ) | 'FORCE' 'PARALLEL' + ( 'DML' | 'DDL' | 'QUERY' ) | 'SET' ) ( <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | '=' | <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | 'PARALLEL' )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterSystemStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="509" height="469"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">ALTER</text> + <rect x="67" y="1" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="13">SYSTEM</text> + <rect x="139" y="1" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="13">ARCHIVE</text> + <rect x="195" y="1" width="28" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="13">LOG</text> + <rect x="139" y="29" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="41">CHECKPOINT</text> + <rect x="139" y="57" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="69">DUMP</text> + <rect x="183" y="57" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="187" y="69">ACTIVE</text> + <rect x="231" y="57" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="235" y="69">SESSION</text> + <rect x="289" y="57" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="293" y="69">HISTORY</text> + <rect x="159" y="85" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="163" y="97">ENABLE</text> + <rect x="159" y="113" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="163" y="125">DISABLE</text> + <rect x="253" y="85" width="120" height="18" class="terminal" rx="4"/> + <text class="terminal" x="257" y="97">DISTRIBUTED RECOVERY</text> + <rect x="253" y="113" width="106" height="18" class="terminal" rx="4"/> + <text class="terminal" x="257" y="125">RESTRICTED SESSION</text> + <rect x="139" y="141" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="153">FLUSH</text> + <rect x="139" y="169" width="68" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="181">DISCONNECT</text> + <rect x="215" y="169" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="219" y="181">SESSION</text> + <rect x="139" y="197" width="70" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="209">KILL SESSION</text> + <rect x="139" y="225" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="237">SWITCH</text> + <rect x="139" y="253" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="265">SUSPEND</text> + <rect x="139" y="281" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="293">RESUME</text> + <rect x="139" y="309" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="321">QUIESCE</text> + <rect x="195" y="309" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="321">RESTRICTED</text> + <rect x="139" y="337" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="349">UNQUIESCE</text> + <rect x="139" y="365" width="66" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="377">SHUTDOWN</text> + <rect x="139" y="393" width="52" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="405">REGISTER</text> + <rect x="139" y="421" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="433">SET</text> + <rect x="139" y="449" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="461">RESET</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#capturerest" xlink:title="captureRest" shape="rect"> + <rect x="421" y="1" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="425" y="13">captureRest</text></a><path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m0 0 h4 m44 0 h4 m20 0 h4 m48 0 h4 m0 0 h4 m28 0 h4 m0 0 h170 m-282 0 h20 m262 0 h20 m-302 0 q10 0 10 10 m282 0 q0 -10 10 -10 m-292 10 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m68 0 h4 m0 0 h186 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m36 0 h4 m0 0 h4 m40 0 h4 m0 0 h4 m50 0 h4 m0 0 h4 m50 0 h4 m0 0 h54 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-252 10 h4 m42 0 h4 m0 0 h4 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m40 -28 h4 m120 0 h4 m-148 0 h20 m128 0 h20 m-168 0 q10 0 10 10 m148 0 q0 -10 10 -10 m-158 10 v8 m148 0 v-8 m-148 8 q0 10 10 10 m128 0 q10 0 10 -10 m-138 10 h4 m106 0 h4 m0 0 h14 m-252 -38 v20 m282 0 v-20 m-282 20 v36 m282 0 v-36 m-282 36 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m38 0 h4 m0 0 h216 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m68 0 h4 m0 0 h4 m50 0 h4 m0 0 h128 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m70 0 h4 m0 0 h184 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m46 0 h4 m0 0 h208 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m52 0 h4 m0 0 h202 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m46 0 h4 m0 0 h208 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m48 0 h4 m0 0 h4 m64 0 h4 m0 0 h134 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m62 0 h4 m0 0 h192 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m66 0 h4 m0 0 h188 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m52 0 h4 m0 0 h202 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m24 0 h4 m0 0 h230 m-272 -10 v20 m282 0 v-20 m-282 20 v8 m282 0 v-8 m-282 8 q0 10 10 10 m262 0 q10 0 10 -10 m-272 10 h4 m36 0 h4 m0 0 h218 m20 -448 h4 m64 0 h4 m3 0 h-3"/> + <polygon points="499 10 507 6 507 14"/> + <polygon points="499 10 491 6 491 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#altersystemstatement" title="AlterSystemStatement" shape="rect">AlterSystemStatement</a></div> + <div>         ::= 'ALTER' 'SYSTEM' ( 'ARCHIVE' 'LOG' | 'CHECKPOINT' | 'DUMP' 'ACTIVE' 'SESSION' + 'HISTORY' | ( 'ENABLE' | 'DISABLE' ) ( 'DISTRIBUTED RECOVERY' | 'RESTRICTED SESSION' + ) | 'FLUSH' | 'DISCONNECT' 'SESSION' | 'KILL SESSION' | 'SWITCH' | 'SUSPEND' | 'RESUME' + | 'QUIESCE' 'RESTRICTED' | 'UNQUIESCE' | 'SHUTDOWN' | 'REGISTER' | 'SET' | 'RESET' + ) <a href="#capturerest" title="captureRest" shape="rect">captureRest</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Wait +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="137" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">WAIT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="65" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="69" y="13">S_LONG</text></a><path class="line" d="m17 10 h2 m0 0 h4 m34 0 h4 m0 0 h4 m48 0 h4 m3 0 h-3"/> + <polygon points="127 10 135 6 135 14"/> + <polygon points="127 10 119 6 119 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#wait" title="Wait" shape="rect">Wait</a>     ::= 'WAIT' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SavepointStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="189" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">SAVEPOINT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="91" y="1" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="95" y="13">S_IDENTIFIER</text></a><path class="line" d="m17 10 h2 m0 0 h4 m60 0 h4 m0 0 h4 m74 0 h4 m3 0 h-3"/> + <polygon points="179 10 187 6 187 14"/> + <polygon points="179 10 171 6 171 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#savepointstatement" title="SavepointStatement" shape="rect">SavepointStatement</a></div> + <div>         ::= 'SAVEPOINT' <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + RollbackStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="449" height="91"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">ROLLBACK</text> + <rect x="107" y="22" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="111" y="34">WORK</text> + <rect x="195" y="22" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="34">TO</text> + <rect x="243" y="43" width="60" height="18" class="terminal" rx="4"/> + <text class="terminal" x="247" y="55">SAVEPOINT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="331" y="22" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="335" y="34">S_IDENTIFIER</text></a><rect x="195" y="71" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="199" y="83">FORCE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="241" y="71" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="245" y="83">S_CHAR_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m56 0 h4 m20 0 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m40 -21 h10 m0 0 h208 m-238 0 h20 m218 0 h20 m-258 0 q10 0 10 10 m238 0 q0 -10 10 -10 m-248 10 v1 m238 0 v-1 m-238 1 q0 10 10 10 m218 0 q10 0 10 -10 m-228 10 h4 m20 0 h4 m20 0 h10 m0 0 h58 m-88 0 h20 m68 0 h20 m-108 0 q10 0 10 10 m88 0 q0 -10 10 -10 m-98 10 v1 m88 0 v-1 m-88 1 q0 10 10 10 m68 0 q10 0 10 -10 m-78 10 h4 m60 0 h4 m20 -21 h4 m74 0 h4 m-228 -10 v20 m238 0 v-20 m-238 20 v29 m238 0 v-29 m-238 29 q0 10 10 10 m218 0 q10 0 10 -10 m-228 10 h4 m38 0 h4 m0 0 h4 m90 0 h4 m0 0 h74 m23 -70 h-3"/> + <polygon points="439 10 447 6 447 14"/> + <polygon points="439 10 431 6 431 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#rollbackstatement" title="RollbackStatement" shape="rect">RollbackStatement</a></div> + <div>         ::= 'ROLLBACK' 'WORK'? ( 'TO' 'SAVEPOINT'? <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> | 'FORCE' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a> )?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Comment +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="423" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">COMMENT</text> + <rect x="87" y="1" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="91" y="13">ON</text> + <rect x="157" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="13">TABLE</text> + <rect x="157" y="29" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="161" y="41">VIEW</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#table" xlink:title="Table" shape="rect"> + <rect x="221" y="1" width="34" height="18" class="nonterminal"/> + <text class="nonterminal" x="225" y="13">Table</text></a><rect x="137" y="57" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="141" y="69">COLUMN</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#column" xlink:title="Column" shape="rect"> + <rect x="193" y="57" width="46" height="18" class="nonterminal"/> + <text class="nonterminal" x="197" y="69">Column</text></a><rect x="283" y="1" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="287" y="13">IS</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-char-literal" xlink:title="S_CHAR_LITERAL" shape="rect"> + <rect x="309" y="1" width="90" height="18" class="nonterminal"/> + <text class="nonterminal" x="313" y="13">S_CHAR_LITERAL</text></a><path class="line" d="m17 10 h2 m0 0 h4 m56 0 h4 m0 0 h4 m22 0 h4 m40 0 h4 m36 0 h4 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m34 0 h4 m0 0 h2 m20 -28 h4 m34 0 h4 m-146 0 h20 m126 0 h20 m-166 0 q10 0 10 10 m146 0 q0 -10 10 -10 m-156 10 v36 m146 0 v-36 m-146 36 q0 10 10 10 m126 0 q10 0 10 -10 m-136 10 h4 m48 0 h4 m0 0 h4 m46 0 h4 m0 0 h16 m20 -56 h4 m18 0 h4 m0 0 h4 m90 0 h4 m3 0 h-3"/> + <polygon points="413 10 421 6 421 14"/> + <polygon points="413 10 405 6 405 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#comment" title="Comment" shape="rect">Comment</a>  ::= 'COMMENT' 'ON' ( ( 'TABLE' | 'VIEW' ) <a href="#table" title="Table" shape="rect">Table</a> | 'COLUMN' <a href="#column" title="Column" shape="rect">Column</a> ) 'IS' <a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Grant +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="517" height="91"> + <polygon points="9 38 1 34 1 42"/> + <polygon points="17 38 9 34 9 42"/> + <rect x="23" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="41">GRANT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#readgranttypes" xlink:title="readGrantTypes" shape="rect"> + <rect x="131" y="29" width="84" height="18" class="nonterminal"/> + <text class="nonterminal" x="135" y="41">readGrantTypes</text></a><rect x="131" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="135" y="13">,</text> + <rect x="263" y="29" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="267" y="41">ON</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="293" y="29" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="297" y="41">RelObjectNameList</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-identifier" xlink:title="S_IDENTIFIER" shape="rect"> + <rect x="91" y="71" width="74" height="18" class="nonterminal"/> + <text class="nonterminal" x="95" y="83">S_IDENTIFIER</text></a><rect x="415" y="29" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="419" y="41">TO</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#userslist" xlink:title="UsersList" shape="rect"> + <rect x="443" y="29" width="50" height="18" class="nonterminal"/> + <text class="nonterminal" x="447" y="41">UsersList</text></a><path class="line" d="m17 38 h2 m0 0 h4 m40 0 h4 m60 0 h4 m84 0 h4 m-112 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -8 q0 -10 10 -10 m92 28 l20 0 m-20 0 q10 0 10 -10 l0 -8 q0 -10 -10 -10 m-92 0 h4 m8 0 h4 m0 0 h76 m-132 28 h20 m132 0 h20 m-172 0 q10 0 10 10 m152 0 q0 -10 10 -10 m-162 10 v1 m152 0 v-1 m-152 1 q0 10 10 10 m132 0 q10 0 10 -10 m-142 10 h10 m0 0 h122 m20 -21 h4 m22 0 h4 m0 0 h4 m94 0 h4 m-324 0 h20 m304 0 h20 m-344 0 q10 0 10 10 m324 0 q0 -10 10 -10 m-334 10 v22 m324 0 v-22 m-324 22 q0 10 10 10 m304 0 q10 0 10 -10 m-314 10 h4 m74 0 h4 m0 0 h222 m20 -42 h4 m20 0 h4 m0 0 h4 m50 0 h4 m3 0 h-3"/> + <polygon points="507 38 515 34 515 42"/> + <polygon points="507 38 499 34 499 42"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#grant" title="Grant" shape="rect">Grant</a>    ::= 'GRANT' ( ( <a href="#readgranttypes" title="readGrantTypes" shape="rect">readGrantTypes</a> ( ',' <a href="#readgranttypes" title="readGrantTypes" shape="rect">readGrantTypes</a> )* )? 'ON' <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a> | <a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a> ) 'TO' <a href="#userslist" title="UsersList" shape="rect">UsersList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + UsersList +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="351" height="45"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectname" xlink:title="RelObjectName" shape="rect"> + <rect x="23" y="13" width="80" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="25">RelObjectName</text></a><rect x="151" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="155" y="25">,</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#columnsnameslistitem" xlink:title="ColumnsNamesListItem" shape="rect"> + <rect x="167" y="13" width="120" height="18" class="nonterminal"/> + <text class="nonterminal" x="171" y="25">ColumnsNamesListItem</text></a><path class="line" d="m17 22 h2 m0 0 h4 m80 0 h4 m40 0 h4 m8 0 h4 m0 0 h4 m120 0 h4 m-164 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m144 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-144 0 h10 m0 0 h134 m-184 21 h20 m184 0 h20 m-224 0 q10 0 10 10 m204 0 q0 -10 10 -10 m-214 10 v1 m204 0 v-1 m-204 1 q0 10 10 10 m184 0 q10 0 10 -10 m-194 10 h10 m0 0 h174 m23 -21 h-3"/> + <polygon points="341 22 349 18 349 26"/> + <polygon points="341 22 333 18 333 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#userslist" title="UsersList" shape="rect">UsersList</a></div> + <div>         ::= <a href="#relobjectname" title="RelObjectName" shape="rect">RelObjectName</a> ( ',' <a href="#columnsnameslistitem" title="ColumnsNamesListItem" shape="rect">ColumnsNamesListItem</a> )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#grant" title="grant">grant</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + readGrantTypes +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="143" height="189"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-select" xlink:title="K_SELECT" shape="rect"> + <rect x="43" y="1" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="13">K_SELECT</text></a><rect x="43" y="29" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">INSERT</text> + <rect x="43" y="57" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">UPDATE</text> + <rect x="43" y="85" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">DELETE</text> + <rect x="43" y="113" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">EXECUTE</text> + <rect x="43" y="141" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="153">ALTER</text> + <rect x="43" y="169" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="181">DROP</text> + <path class="line" d="m17 10 h2 m20 0 h4 m56 0 h4 m-84 0 h20 m64 0 h20 m-104 0 q10 0 10 10 m84 0 q0 -10 10 -10 m-94 10 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m40 0 h4 m0 0 h16 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m44 0 h4 m0 0 h12 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m40 0 h4 m0 0 h16 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m48 0 h4 m0 0 h8 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m36 0 h4 m0 0 h20 m-74 -10 v20 m84 0 v-20 m-84 20 v8 m84 0 v-8 m-84 8 q0 10 10 10 m64 0 q10 0 10 -10 m-74 10 h4 m34 0 h4 m0 0 h22 m23 -168 h-3"/> + <polygon points="133 10 141 6 141 14"/> + <polygon points="133 10 125 6 125 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#readgranttypes" title="readGrantTypes" shape="rect">readGrantTypes</a></div> + <div>         ::= <a href="#k-select" title="K_SELECT" shape="rect">K_SELECT</a></div> + <div>           | 'INSERT'</div> + <div>           | 'UPDATE'</div> + <div>           | 'DELETE'</div> + <div>           | 'EXECUTE'</div> + <div>           | 'ALTER'</div> + <div>           | 'DROP'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#grant" title="grant">grant</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Sequence +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sequence" title="Sequence" shape="rect">Sequence</a> ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#altersequence" title="altersequence">altersequence</a></li><li><a href="#createsequence" title="createsequence">createsequence</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + SequenceParameters +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="353" height="514"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="103" y="13" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="25">INCREMENT</text> + <rect x="173" y="13" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="177" y="25">BY</text> + <rect x="103" y="41" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="53">START</text> + <rect x="147" y="41" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="151" y="53">WITH</text> + <rect x="103" y="69" width="58" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="81">MAXVALUE</text> + <rect x="103" y="97" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="109">MINVALUE</text> + <rect x="103" y="125" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="137">CACHE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="221" y="13" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="225" y="25">S_LONG</text></a><rect x="83" y="153" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="165">RESTART</text> + <rect x="159" y="174" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="163" y="186">WITH</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="201" y="174" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="205" y="186">S_LONG</text></a><rect x="83" y="202" width="72" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="214">NOMAXVALUE</text> + <rect x="83" y="230" width="70" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="242">NOMINVALUE</text> + <rect x="83" y="258" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="270">NOCYCLE</text> + <rect x="83" y="286" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="298">CYCLE</text> + <rect x="83" y="314" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="326">NOCACHE</text> + <rect x="83" y="342" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="354">ORDER</text> + <rect x="83" y="370" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="382">NOORDER</text> + <rect x="83" y="398" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="410">KEEP</text> + <rect x="83" y="426" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="438">NOKEEP</text> + <rect x="83" y="454" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="466">SESSION</text> + <rect x="83" y="482" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="87" y="494">GLOBAL</text> + <path class="line" d="m17 22 h2 m80 0 h4 m62 0 h4 m0 0 h4 m20 0 h4 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m36 0 h4 m0 0 h4 m34 0 h4 m0 0 h12 m-108 -10 v20 m118 0 v-20 m-118 20 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m58 0 h4 m0 0 h32 m-108 -10 v20 m118 0 v-20 m-118 20 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m56 0 h4 m0 0 h34 m-108 -10 v20 m118 0 v-20 m-118 20 v8 m118 0 v-8 m-118 8 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m38 0 h4 m0 0 h52 m20 -112 h4 m48 0 h4 m-214 0 h20 m194 0 h20 m-234 0 q10 0 10 10 m214 0 q0 -10 10 -10 m-224 10 v120 m214 0 v-120 m-214 120 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m48 0 h4 m20 0 h10 m0 0 h88 m-118 0 h20 m98 0 h20 m-138 0 q10 0 10 10 m118 0 q0 -10 10 -10 m-128 10 v1 m118 0 v-1 m-118 1 q0 10 10 10 m98 0 q10 0 10 -10 m-108 10 h4 m34 0 h4 m0 0 h4 m48 0 h4 m-184 -31 v20 m214 0 v-20 m-214 20 v29 m214 0 v-29 m-214 29 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m72 0 h4 m0 0 h114 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m70 0 h4 m0 0 h116 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m50 0 h4 m0 0 h136 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m36 0 h4 m0 0 h150 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m54 0 h4 m0 0 h132 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m40 0 h4 m0 0 h146 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m56 0 h4 m0 0 h130 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m30 0 h4 m0 0 h156 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m46 0 h4 m0 0 h140 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m50 0 h4 m0 0 h136 m-204 -10 v20 m214 0 v-20 m-214 20 v8 m214 0 v-8 m-214 8 q0 10 10 10 m194 0 q10 0 10 -10 m-204 10 h4 m44 0 h4 m0 0 h142 m-234 -469 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m234 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-234 0 h10 m0 0 h224 m-274 21 h20 m274 0 h20 m-314 0 q10 0 10 10 m294 0 q0 -10 10 -10 m-304 10 v470 m294 0 v-470 m-294 470 q0 10 10 10 m274 0 q10 0 10 -10 m-284 10 h10 m0 0 h264 m23 -490 h-3"/> + <polygon points="343 22 351 18 351 26"/> + <polygon points="343 22 335 18 335 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#sequenceparameters" title="SequenceParameters" shape="rect">SequenceParameters</a></div> + <div>         ::= ( ( 'INCREMENT' 'BY' | 'START' 'WITH' | 'MAXVALUE' | 'MINVALUE' | 'CACHE' + ) <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> | 'RESTART' ( 'WITH' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> )? | 'NOMAXVALUE' | 'NOMINVALUE' | 'NOCYCLE' | 'CYCLE' | 'NOCACHE' | 'ORDER' | 'NOORDER' + | 'KEEP' | 'NOKEEP' | 'SESSION' | 'GLOBAL' )*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#altersequence" title="altersequence">altersequence</a></li><li><a href="#createsequence" title="createsequence">createsequence</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateSequence +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="335" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text> + <rect x="73" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="77" y="13">SEQUENCE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sequence" xlink:title="Sequence" shape="rect"> + <rect x="137" y="1" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="141" y="13">Sequence</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sequenceparameters" xlink:title="SequenceParameters" shape="rect"> + <rect x="201" y="1" width="110" height="18" class="nonterminal"/> + <text class="nonterminal" x="205" y="13">SequenceParameters</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m110 0 h4 m3 0 h-3"/> + <polygon points="325 10 333 6 333 14"/> + <polygon points="325 10 317 6 317 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createsequence" title="CreateSequence" shape="rect">CreateSequence</a></div> + <div>         ::= 'CREATE' 'SEQUENCE' <a href="#sequence" title="Sequence" shape="rect">Sequence</a> <a href="#sequenceparameters" title="SequenceParameters" shape="rect">SequenceParameters</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + AlterSequence +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="329" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">ALTER</text> + <rect x="67" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="71" y="13">SEQUENCE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sequence" xlink:title="Sequence" shape="rect"> + <rect x="131" y="1" width="56" height="18" class="nonterminal"/> + <text class="nonterminal" x="135" y="13">Sequence</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sequenceparameters" xlink:title="SequenceParameters" shape="rect"> + <rect x="195" y="1" width="110" height="18" class="nonterminal"/> + <text class="nonterminal" x="199" y="13">SequenceParameters</text></a><path class="line" d="m17 10 h2 m0 0 h4 m36 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m56 0 h4 m0 0 h4 m110 0 h4 m3 0 h-3"/> + <polygon points="319 10 327 6 327 14"/> + <polygon points="319 10 311 6 311 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#altersequence" title="AlterSequence" shape="rect">AlterSequence</a></div> + <div>         ::= 'ALTER' 'SEQUENCE' <a href="#sequence" title="Sequence" shape="rect">Sequence</a> <a href="#sequenceparameters" title="SequenceParameters" shape="rect">SequenceParameters</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateFunctionStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="399" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text> + <rect x="93" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="97" y="34">OR</text> + <rect x="123" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="127" y="34">REPLACE</text> + <rect x="219" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="223" y="13">FUNCTION</text> + <rect x="219" y="29" width="64" height="18" class="terminal" rx="4"/> + <text class="terminal" x="223" y="41">PROCEDURE</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#capturerest" xlink:title="captureRest" shape="rect"> + <rect x="311" y="1" width="64" height="18" class="nonterminal"/> + <text class="nonterminal" x="315" y="13">captureRest</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h76 m-106 0 h20 m86 0 h20 m-126 0 q10 0 10 10 m106 0 q0 -10 10 -10 m-116 10 v1 m106 0 v-1 m-106 1 q0 10 10 10 m86 0 q10 0 10 -10 m-96 10 h4 m22 0 h4 m0 0 h4 m48 0 h4 m40 -21 h4 m56 0 h4 m0 0 h8 m-92 0 h20 m72 0 h20 m-112 0 q10 0 10 10 m92 0 q0 -10 10 -10 m-102 10 v8 m92 0 v-8 m-92 8 q0 10 10 10 m72 0 q10 0 10 -10 m-82 10 h4 m64 0 h4 m20 -28 h4 m64 0 h4 m3 0 h-3"/> + <polygon points="389 10 397 6 397 14"/> + <polygon points="389 10 381 6 381 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createfunctionstatement" title="CreateFunctionStatement" shape="rect">CreateFunctionStatement</a></div> + <div>         ::= 'CREATE' ( 'OR' 'REPLACE' )? ( 'FUNCTION' | 'PROCEDURE' ) <a href="#capturerest" title="captureRest" shape="rect">captureRest</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + CreateSynonym +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="565" height="42"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="42" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CREATE</text> + <rect x="93" y="22" width="22" height="18" class="terminal" rx="4"/> + <text class="terminal" x="97" y="34">OR</text> + <rect x="123" y="22" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="127" y="34">REPLACE</text> + <rect x="219" y="22" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="223" y="34">PUBLIC</text> + <rect x="287" y="1" width="56" height="18" class="terminal" rx="4"/> + <text class="terminal" x="291" y="13">SYNONYM</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#synonym" xlink:title="Synonym" shape="rect"> + <rect x="351" y="1" width="54" height="18" class="nonterminal"/> + <text class="nonterminal" x="355" y="13">Synonym</text></a><rect x="413" y="1" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="417" y="13">FOR</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="447" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="451" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h76 m-106 0 h20 m86 0 h20 m-126 0 q10 0 10 10 m106 0 q0 -10 10 -10 m-116 10 v1 m106 0 v-1 m-106 1 q0 10 10 10 m86 0 q10 0 10 -10 m-96 10 h4 m22 0 h4 m0 0 h4 m48 0 h4 m40 -21 h10 m0 0 h38 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v1 m68 0 v-1 m-68 1 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m40 0 h4 m20 -21 h4 m56 0 h4 m0 0 h4 m54 0 h4 m0 0 h4 m26 0 h4 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="555 10 563 6 563 14"/> + <polygon points="555 10 547 6 547 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#createsynonym" title="CreateSynonym" shape="rect">CreateSynonym</a></div> + <div>         ::= 'CREATE' ( 'OR' 'REPLACE' )? 'PUBLIC'? 'SYNONYM' <a href="#synonym" title="Synonym" shape="rect">Synonym</a> 'FOR' <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#singlestatement" title="singlestatement">singlestatement</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + Synonym +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="141" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#relobjectnamelist" xlink:title="RelObjectNameList" shape="rect"> + <rect x="23" y="1" width="94" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">RelObjectNameList</text></a><path class="line" d="m17 10 h2 m0 0 h4 m94 0 h4 m3 0 h-3"/> + <polygon points="131 10 139 6 139 14"/> + <polygon points="131 10 123 6 123 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#synonym" title="Synonym" shape="rect">Synonym</a>  ::= <a href="#relobjectnamelist" title="RelObjectNameList" shape="rect">RelObjectNameList</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createsynonym" title="createsynonym">createsynonym</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + UnsupportedStatement +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="249" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#captureunsupportedstatementdeclaration" xlink:title="captureUnsupportedStatementDeclaration" shape="rect"> + <rect x="23" y="1" width="202" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="13">captureUnsupportedStatementDeclaration</text></a><path class="line" d="m17 10 h2 m0 0 h4 m202 0 h4 m3 0 h-3"/> + <polygon points="239 10 247 6 247 14"/> + <polygon points="239 10 231 6 231 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#unsupportedstatement" title="UnsupportedStatement" shape="rect">UnsupportedStatement</a></div> + <div>         ::= <a href="#captureunsupportedstatementdeclaration" title="captureUnsupportedStatementDeclaration" shape="rect">captureUnsupportedStatementDeclaration</a></div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#statement" title="statement">statement</a></li><li><a href="#statements" title="statements">statements</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + WHITESPACE +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="133" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13"/> + <polygon points="43 38 46 29 86 29 89 38 86 47 46 47" class="regexp"/> + <text class="regexp" x="54" y="41">[#x9]</text> + <polygon points="43 66 46 57 86 57 89 66 86 75 46 75" class="regexp"/> + <text class="regexp" x="54" y="69">[#xD]</text> + <polygon points="43 94 46 85 86 85 89 94 86 103 46 103" class="regexp"/> + <text class="regexp" x="54" y="97">[#xA]</text> + <path class="line" d="m17 10 h2 m20 0 h4 m8 0 h4 m0 0 h38 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m23 -84 h-3"/> + <polygon points="123 10 131 6 131 14"/> + <polygon points="123 10 115 6 115 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a></div> + <div>         ::= [ #x9#xD#xA]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#dt-zone" title="dt-zone">dt-zone</a></li><li><a href="#op-concat" title="op-concat">op-concat</a></li><li><a href="#op-greaterthanequals" title="op-greaterthanequals">op-greaterthanequals</a></li><li><a href="#op-minorthanequals" title="op-minorthanequals">op-minorthanequals</a></li><li><a href="#op-notequalsbang" title="op-notequalsbang">op-notequalsbang</a></li><li><a href="#op-notequalsstandard" title="op-notequalsstandard">op-notequalsstandard</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_DATETIMELITERAL +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="159" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">DATE</text> + <rect x="43" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">TIME</text> + <rect x="43" y="57" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">TIMESTAMP</text> + <rect x="43" y="85" width="72" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">TIMESTAMPTZ</text> + <path class="line" d="m17 10 h2 m20 0 h4 m32 0 h4 m0 0 h40 m-100 0 h20 m80 0 h20 m-120 0 q10 0 10 10 m100 0 q0 -10 10 -10 m-110 10 v8 m100 0 v-8 m-100 8 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m30 0 h4 m0 0 h42 m-90 -10 v20 m100 0 v-20 m-100 20 v8 m100 0 v-8 m-100 8 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m62 0 h4 m0 0 h10 m-90 -10 v20 m100 0 v-20 m-100 20 v8 m100 0 v-8 m-100 8 q0 10 10 10 m80 0 q10 0 10 -10 m-90 10 h4 m72 0 h4 m23 -84 h-3"/> + <polygon points="149 10 157 6 157 14"/> + <polygon points="149 10 141 6 141 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a></div> + <div>         ::= 'DATE'</div> + <div>           | 'TIME'</div> + <div>           | 'TIMESTAMP'</div> + <div>           | 'TIMESTAMPTZ'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#dt-zone" title="dt-zone">dt-zone</a></li><li><a href="#datetimeliteralexpression" title="datetimeliteralexpression">datetimeliteralexpression</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li><li><a href="#reset" title="reset">reset</a></li><li><a href="#set" title="set">set</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_DATE_LITERAL +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="133" height="161"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">YEAR</text> + <rect x="43" y="29" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">MONTH</text> + <rect x="43" y="57" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">DAY</text> + <rect x="43" y="85" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">HOUR</text> + <rect x="43" y="113" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">MINUTE</text> + <rect x="43" y="141" width="46" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="153">SECOND</text> + <path class="line" d="m17 10 h2 m20 0 h4 m32 0 h4 m0 0 h14 m-74 0 h20 m54 0 h20 m-94 0 q10 0 10 10 m74 0 q0 -10 10 -10 m-84 10 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m44 0 h4 m0 0 h2 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m26 0 h4 m0 0 h20 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m36 0 h4 m0 0 h10 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m44 0 h4 m0 0 h2 m-64 -10 v20 m74 0 v-20 m-74 20 v8 m74 0 v-8 m-74 8 q0 10 10 10 m54 0 q10 0 10 -10 m-64 10 h4 m46 0 h4 m23 -140 h-3"/> + <polygon points="123 10 131 6 131 14"/> + <polygon points="123 10 115 6 115 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-date-literal" title="K_DATE_LITERAL" shape="rect">K_DATE_LITERAL</a></div> + <div>         ::= 'YEAR'</div> + <div>           | 'MONTH'</div> + <div>           | 'DAY'</div> + <div>           | 'HOUR'</div> + <div>           | 'MINUTE'</div> + <div>           | 'SECOND'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#intervalexpressionwithoutinterval" title="intervalexpressionwithoutinterval">intervalexpressionwithoutinterval</a></li><li><a href="#joinwindow" title="joinwindow">joinwindow</a></li><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_ISOLATION +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="107" height="105"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">UR</text> + <rect x="43" y="29" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">RS</text> + <rect x="43" y="57" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">RR</text> + <rect x="43" y="85" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">CS</text> + <path class="line" d="m17 10 h2 m20 0 h4 m20 0 h4 m-48 0 h20 m28 0 h20 m-68 0 q10 0 10 10 m48 0 q0 -10 10 -10 m-58 10 v8 m48 0 v-8 m-48 8 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m-38 -10 v20 m48 0 v-20 m-48 20 v8 m48 0 v-8 m-48 8 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m-38 -10 v20 m48 0 v-20 m-48 20 v8 m48 0 v-8 m-48 8 q0 10 10 10 m28 0 q10 0 10 -10 m-38 10 h4 m20 0 h4 m23 -84 h-3"/> + <polygon points="97 10 105 6 105 14"/> + <polygon points="97 10 89 6 89 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-isolation" title="K_ISOLATION" shape="rect">K_ISOLATION</a></div> + <div>         ::= 'UR'</div> + <div>           | 'RS'</div> + <div>           | 'RR'</div> + <div>           | 'CS'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li><li><a href="#withisolation" title="withisolation">withisolation</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_NEXTVAL +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="309" height="75"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="48" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">NEXTVAL</text> + <rect x="43" y="55" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="67">NEXT</text> + <rect x="103" y="55" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="107" y="67"/> + <rect x="139" y="55" width="36" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="67">VALUE</text> + <rect x="223" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="227" y="25"/> + <rect x="259" y="13" width="26" height="18" class="terminal" rx="4"/> + <text class="terminal" x="263" y="25">FOR</text> + <path class="line" d="m17 22 h2 m20 0 h4 m48 0 h4 m0 0 h84 m-160 0 h20 m140 0 h20 m-180 0 q10 0 10 10 m160 0 q0 -10 10 -10 m-170 10 v22 m160 0 v-22 m-160 22 q0 10 10 10 m140 0 q10 0 10 -10 m-150 10 h4 m32 0 h4 m20 0 h4 m8 0 h4 m-36 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m16 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-16 0 h10 m0 0 h6 m20 21 h4 m36 0 h4 m40 -42 h4 m8 0 h4 m-36 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m16 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-16 0 h10 m0 0 h6 m20 21 h4 m26 0 h4 m3 0 h-3"/> + <polygon points="299 22 307 18 307 26"/> + <polygon points="299 22 291 18 291 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-nextval" title="K_NEXTVAL" shape="rect">K_NEXTVAL</a></div> + <div>         ::= ( 'NEXTVAL' | 'NEXT' ' '+ 'VALUE' ) ' '+ 'FOR'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#nextvalexpression" title="nextvalexpression">nextvalexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_SELECT +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="127" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="40" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">SELECT</text> + <rect x="43" y="29" width="24" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">SEL</text> + <path class="line" d="m17 10 h2 m20 0 h4 m40 0 h4 m-68 0 h20 m48 0 h20 m-88 0 q10 0 10 10 m68 0 q0 -10 10 -10 m-78 10 v8 m68 0 v-8 m-68 8 q0 10 10 10 m48 0 q10 0 10 -10 m-58 10 h4 m24 0 h4 m0 0 h16 m23 -28 h-3"/> + <polygon points="117 10 125 6 125 14"/> + <polygon points="117 10 109 6 109 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-select" title="K_SELECT" shape="rect">K_SELECT</a> ::= 'SELECT'</div> + <div>           | 'SEL'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#relobjectnameext2" title="relobjectnameext2">relobjectnameext2</a></li><li><a href="#readgranttypes" title="readgranttypes">readgranttypes</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_TIME_KEY_EXPR +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="367" height="77"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">CURRENT</text> + <rect x="101" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="105" y="13">_</text> + <rect x="121" y="43" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="125" y="55"/> + <rect x="197" y="1" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="13">TIMESTAMP</text> + <rect x="197" y="29" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="41">TIME</text> + <rect x="197" y="57" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="69">DATE</text> + <rect x="307" y="22" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="311" y="34">()</text> + <path class="line" d="m17 10 h2 m0 0 h4 m50 0 h4 m20 0 h4 m14 0 h4 m0 0 h34 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v22 m76 0 v-22 m-76 22 q0 10 10 10 m56 0 q10 0 10 -10 m-46 10 h4 m8 0 h4 m-36 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m16 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-16 0 h10 m0 0 h6 m60 -21 h4 m62 0 h4 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m30 0 h4 m0 0 h32 m-80 -10 v20 m90 0 v-20 m-90 20 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m32 0 h4 m0 0 h30 m40 -56 h10 m0 0 h14 m-44 0 h20 m24 0 h20 m-64 0 q10 0 10 10 m44 0 q0 -10 10 -10 m-54 10 v1 m44 0 v-1 m-44 1 q0 10 10 10 m24 0 q10 0 10 -10 m-34 10 h4 m16 0 h4 m23 -21 h-3"/> + <polygon points="357 10 365 6 365 14"/> + <polygon points="357 10 349 6 349 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-time-key-expr" title="K_TIME_KEY_EXPR" shape="rect">K_TIME_KEY_EXPR</a></div> + <div>         ::= 'CURRENT' ( '_' | ' '+ ) ( 'TIMESTAMP' | 'TIME' | 'DATE' ) '()'?</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + K_STRING_FUNCTION_NAME +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="149" height="133"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="44" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">SUBSTR</text> + <rect x="43" y="29" width="62" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">SUBSTRING</text> + <rect x="43" y="57" width="32" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">TRIM</text> + <rect x="43" y="85" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="97">POSITION</text> + <rect x="43" y="113" width="50" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">OVERLAY</text> + <path class="line" d="m17 10 h2 m20 0 h4 m44 0 h4 m0 0 h18 m-90 0 h20 m70 0 h20 m-110 0 q10 0 10 10 m90 0 q0 -10 10 -10 m-100 10 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m62 0 h4 m-80 -10 v20 m90 0 v-20 m-90 20 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m32 0 h4 m0 0 h30 m-80 -10 v20 m90 0 v-20 m-90 20 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m54 0 h4 m0 0 h8 m-80 -10 v20 m90 0 v-20 m-90 20 v8 m90 0 v-8 m-90 8 q0 10 10 10 m70 0 q10 0 10 -10 m-80 10 h4 m50 0 h4 m0 0 h12 m23 -112 h-3"/> + <polygon points="139 10 147 6 147 14"/> + <polygon points="139 10 131 6 131 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#k-string-function-name" title="K_STRING_FUNCTION_NAME" shape="rect">K_STRING_FUNCTION_NAME</a></div> + <div>         ::= 'SUBSTR'</div> + <div>           | 'SUBSTRING'</div> + <div>           | 'TRIM'</div> + <div>           | 'POSITION'</div> + <div>           | 'OVERLAY'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li><li><a href="#specialstringfunctionwithnamedparameters" title="specialstringfunctionwithnamedparameters">specialstringfunctionwithnamedparameters</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OP_GREATERTHANEQUALS +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="203" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34">></text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="65" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="69" y="13">WHITESPACE</text></a><rect x="165" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="34">=</text> + <path class="line" d="m17 31 h2 m0 0 h4 m14 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m20 21 h4 m14 0 h4 m3 0 h-3"/> + <polygon points="193 31 201 27 201 35"/> + <polygon points="193 31 185 27 185 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#op-greaterthanequals" title="OP_GREATERTHANEQUALS" shape="rect">OP_GREATERTHANEQUALS</a></div> + <div>         ::= '>' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* '='</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OP_MINORTHANEQUALS +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="203" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34"><</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="65" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="69" y="13">WHITESPACE</text></a><rect x="165" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="34">=</text> + <path class="line" d="m17 31 h2 m0 0 h4 m14 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m20 21 h4 m14 0 h4 m3 0 h-3"/> + <polygon points="193 31 201 27 201 35"/> + <polygon points="193 31 185 27 185 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#op-minorthanequals" title="OP_MINORTHANEQUALS" shape="rect">OP_MINORTHANEQUALS</a></div> + <div>         ::= '<' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* '='</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OP_NOTEQUALSSTANDARD +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="203" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34"><</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="65" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="69" y="13">WHITESPACE</text></a><rect x="165" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="169" y="34">></text> + <path class="line" d="m17 31 h2 m0 0 h4 m14 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m20 21 h4 m14 0 h4 m3 0 h-3"/> + <polygon points="193 31 201 27 201 35"/> + <polygon points="193 31 185 27 185 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#op-notequalsstandard" title="OP_NOTEQUALSSTANDARD" shape="rect">OP_NOTEQUALSSTANDARD</a></div> + <div>         ::= '<' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* '>'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OP_NOTEQUALSBANG +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="199" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34">!</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="61" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="65" y="13">WHITESPACE</text></a><rect x="161" y="22" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="165" y="34">=</text> + <path class="line" d="m17 31 h2 m0 0 h4 m10 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m20 21 h4 m14 0 h4 m3 0 h-3"/> + <polygon points="189 31 197 27 197 35"/> + <polygon points="189 31 181 27 181 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#op-notequalsbang" title="OP_NOTEQUALSBANG" shape="rect">OP_NOTEQUALSBANG</a></div> + <div>         ::= '!' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* '='</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + OP_CONCAT +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="199" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/> + <rect x="23" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="34">|</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="63" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="13">WHITESPACE</text></a><rect x="163" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="167" y="34">|</text> + <path class="line" d="m17 31 h2 m0 0 h4 m12 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m20 21 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="189 31 197 27 197 35"/> + <polygon points="189 31 181 27 181 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#op-concat" title="OP_CONCAT" shape="rect">OP_CONCAT</a></div> + <div>         ::= '|' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* '|'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#concatexpression" title="concatexpression">concatexpression</a></li><li><a href="#regularcondition" title="regularcondition">regularcondition</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + DT_ZONE +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="743" height="136"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#k-datetimeliteral" xlink:title="K_DATETIMELITERAL" shape="rect"> + <rect x="23" y="22" width="104" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="34">K_DATETIMELITERAL</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="155" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="159" y="13">WHITESPACE</text></a><rect x="275" y="43" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="279" y="55">(</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="295" y="43" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="299" y="55">S_LONG</text></a><rect x="351" y="43" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="355" y="55">)</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="411" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="415" y="13">WHITESPACE</text></a><rect x="531" y="22" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="535" y="34">WITH</text> + <rect x="531" y="50" width="54" height="18" class="terminal" rx="4"/> + <text class="terminal" x="535" y="62">WITHOUT</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="633" y="22" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="637" y="34">WHITESPACE</text></a><rect x="341" y="104" width="38" height="18" class="terminal" rx="4"/> + <text class="terminal" x="345" y="116">LOCAL</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="407" y="104" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="411" y="116">WHITESPACE</text></a><rect x="527" y="104" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="531" y="116">TIME</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#whitespace" xlink:title="WHITESPACE" shape="rect"> + <rect x="585" y="104" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="589" y="116">WHITESPACE</text></a><rect x="685" y="104" width="34" height="18" class="terminal" rx="4"/> + <text class="terminal" x="689" y="116">ZONE</text> + <path class="line" d="m17 31 h2 m0 0 h4 m104 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m40 21 h10 m0 0 h86 m-116 0 h20 m96 0 h20 m-136 0 q10 0 10 10 m116 0 q0 -10 10 -10 m-126 10 v1 m116 0 v-1 m-116 1 q0 10 10 10 m96 0 q10 0 10 -10 m-106 10 h4 m12 0 h4 m0 0 h4 m48 0 h4 m0 0 h4 m12 0 h4 m40 -21 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m40 21 h4 m34 0 h4 m0 0 h20 m-82 0 h20 m62 0 h20 m-102 0 q10 0 10 10 m82 0 q0 -10 10 -10 m-92 10 v8 m82 0 v-8 m-82 8 q0 10 10 10 m62 0 q10 0 10 -10 m-72 10 h4 m54 0 h4 m40 -28 h4 m72 0 h4 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h10 m0 0 h70 m22 21 l2 0 m2 0 l2 0 m2 0 l2 0 m-436 82 l2 0 m2 0 l2 0 m2 0 l2 0 m22 0 h4 m38 0 h4 m20 0 h4 m72 0 h4 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h10 m0 0 h70 m-166 21 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v1 m186 0 v-1 m-186 1 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h10 m0 0 h156 m20 -21 h4 m30 0 h4 m20 0 h4 m72 0 h4 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h10 m0 0 h70 m20 21 h4 m34 0 h4 m3 0 h-3"/> + <polygon points="733 113 741 109 741 117"/> + <polygon points="733 113 725 109 725 117"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#dt-zone" title="DT_ZONE" shape="rect">DT_ZONE</a>  ::= <a href="#k-datetimeliteral" title="K_DATETIMELITERAL" shape="rect">K_DATETIMELITERAL</a> <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* ( '(' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ')' )? <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>* ( 'WITH' | 'WITHOUT' ) <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>+ ( 'LOCAL' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>+ )? 'TIME' <a href="#whitespace" title="WHITESPACE" shape="rect">WHITESPACE</a>+ 'ZONE'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + S_DOUBLE +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="503" height="266"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="63" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="67" y="34">S_LONG</text></a><rect x="139" y="1" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="13">.</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="155" y="1" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="159" y="13">S_LONG</text></a><rect x="251" y="22" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="255" y="34">e</text> + <rect x="251" y="50" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="255" y="62">E</text> + <rect x="311" y="43" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="315" y="55">+</text> + <polygon points="311 80 314 71 360 71 363 80 360 89 314 89" class="regexp"/> + <text class="regexp" x="322" y="83">[#x2D]</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="391" y="22" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="395" y="34">S_LONG</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="43" y="99" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="111">S_LONG</text></a><rect x="119" y="99" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="123" y="111">.</text> + <rect x="175" y="120" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="179" y="132">e</text> + <rect x="175" y="148" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="179" y="160">E</text> + <rect x="235" y="141" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="239" y="153">+</text> + <polygon points="235 178 238 169 284 169 287 178 284 187 238 187" class="regexp"/> + <text class="regexp" x="246" y="181">[#x2D]</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="315" y="120" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="319" y="132">S_LONG</text></a><rect x="139" y="197" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="209">e</text> + <rect x="139" y="225" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="143" y="237">E</text> + <rect x="199" y="218" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="203" y="230">+</text> + <polygon points="199 255 202 246 248 246 251 255 248 264 202 264" class="regexp"/> + <text class="regexp" x="210" y="258">[#x2D]</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s-long" xlink:title="S_LONG" shape="rect"> + <rect x="279" y="197" width="48" height="18" class="nonterminal"/> + <text class="nonterminal" x="283" y="209">S_LONG</text></a><path class="line" d="m17 10 h2 m40 0 h10 m0 0 h46 m-76 0 h20 m56 0 h20 m-96 0 q10 0 10 10 m76 0 q0 -10 10 -10 m-86 10 v1 m76 0 v-1 m-76 1 q0 10 10 10 m56 0 q10 0 10 -10 m-66 10 h4 m48 0 h4 m20 -21 h4 m8 0 h4 m0 0 h4 m48 0 h4 m20 0 h10 m0 0 h206 m-236 0 h20 m216 0 h20 m-256 0 q10 0 10 10 m236 0 q0 -10 10 -10 m-246 10 v1 m236 0 v-1 m-236 1 q0 10 10 10 m216 0 q10 0 10 -10 m-206 10 h4 m12 0 h4 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v8 m40 0 v-8 m-40 8 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m40 -28 h10 m0 0 h50 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v1 m80 0 v-1 m-80 1 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m14 0 h4 m0 0 h38 m-70 -10 v20 m80 0 v-20 m-80 20 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -49 h4 m48 0 h4 m-424 -21 h20 m424 0 h20 m-464 0 q10 0 10 10 m444 0 q0 -10 10 -10 m-454 10 v78 m444 0 v-78 m-444 78 q0 10 10 10 m424 0 q10 0 10 -10 m-434 10 h4 m48 0 h4 m20 0 h4 m8 0 h4 m20 0 h10 m0 0 h206 m-236 0 h20 m216 0 h20 m-256 0 q10 0 10 10 m236 0 q0 -10 10 -10 m-246 10 v1 m236 0 v-1 m-236 1 q0 10 10 10 m216 0 q10 0 10 -10 m-206 10 h4 m12 0 h4 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v8 m40 0 v-8 m-40 8 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m40 -28 h10 m0 0 h50 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v1 m80 0 v-1 m-80 1 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m14 0 h4 m0 0 h38 m-70 -10 v20 m80 0 v-20 m-80 20 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -49 h4 m48 0 h4 m-272 -21 h20 m272 0 h20 m-312 0 q10 0 10 10 m292 0 q0 -10 10 -10 m-302 10 v78 m292 0 v-78 m-292 78 q0 10 10 10 m272 0 q10 0 10 -10 m-262 10 h4 m12 0 h4 m-40 0 h20 m20 0 h20 m-60 0 q10 0 10 10 m40 0 q0 -10 10 -10 m-50 10 v8 m40 0 v-8 m-40 8 q0 10 10 10 m20 0 q10 0 10 -10 m-30 10 h4 m12 0 h4 m40 -28 h10 m0 0 h50 m-80 0 h20 m60 0 h20 m-100 0 q10 0 10 10 m80 0 q0 -10 10 -10 m-90 10 v1 m80 0 v-1 m-80 1 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m14 0 h4 m0 0 h38 m-70 -10 v20 m80 0 v-20 m-80 20 v8 m80 0 v-8 m-80 8 q0 10 10 10 m60 0 q10 0 10 -10 m-70 10 h4 m52 0 h4 m20 -49 h4 m48 0 h4 m0 0 h56 m20 -98 h56 m23 -98 h-3"/> + <polygon points="493 10 501 6 501 14"/> + <polygon points="493 10 485 6 485 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-double" title="S_DOUBLE" shape="rect">S_DOUBLE</a> ::= <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a>? '.' <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ( [eE] [+#x2D]? <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> )?</div> + <div>           | <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> ( '.' ( [eE] [+#x2D]? <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> )? | [eE] [+#x2D]? <a href="#s-long" title="S_LONG" shape="rect">S_LONG</a> )</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alist" title="alist">alist</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + S_LONG +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="123" height="33"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#digit" xlink:title="DIGIT" shape="rect"> + <rect x="43" y="13" width="36" height="18" class="nonterminal"/> + <text class="nonterminal" x="47" y="25">DIGIT</text></a><path class="line" d="m17 22 h2 m20 0 h4 m36 0 h4 m-64 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m44 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-44 0 h10 m0 0 h34 m23 21 h-3"/> + <polygon points="113 22 121 18 121 26"/> + <polygon points="113 22 105 18 105 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-long" title="S_LONG" shape="rect">S_LONG</a>   ::= <a href="#digit" title="DIGIT" shape="rect">DIGIT</a>+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alist" title="alist">alist</a></li><li><a href="#altersession" title="altersession">altersession</a></li><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#columnsnameslistitem" title="columnsnameslistitem">columnsnameslistitem</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#dt-zone" title="dt-zone">dt-zone</a></li><li><a href="#fetch" title="fetch">fetch</a></li><li><a href="#first" title="first">first</a></li><li><a href="#funcargslistitem" title="funcargslistitem">funcargslistitem</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#joinwindow" title="joinwindow">joinwindow</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#ksqlwindowclause" title="ksqlwindowclause">ksqlwindowclause</a></li><li><a href="#numericbind" title="numericbind">numericbind</a></li><li><a href="#optimizefor" title="optimizefor">optimizefor</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#renametablestatement" title="renametablestatement">renametablestatement</a></li><li><a href="#s-double" title="s-double">s-double</a></li><li><a href="#sequenceparameters" title="sequenceparameters">sequenceparameters</a></li><li><a href="#simplejdbcparameter" title="simplejdbcparameter">simplejdbcparameter</a></li><li><a href="#skip" title="skip">skip</a></li><li><a href="#top" title="top">top</a></li><li><a href="#wait" title="wait">wait</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + DIGIT +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="89" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <polygon points="23 10 26 1 62 1 65 10 62 19 26 19" class="regexp"/> + <text class="regexp" x="34" y="13">[0-9]</text> + <path class="line" d="m17 10 h2 m0 0 h4 m42 0 h4 m3 0 h-3"/> + <polygon points="79 10 87 6 87 14"/> + <polygon points="79 10 71 6 71 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#digit" title="DIGIT" shape="rect">DIGIT</a>    ::= [0-9]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#s-long" title="s-long">s-long</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + S_HEX +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="231" height="75"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">x'</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#hex-value" xlink:title="HEX_VALUE" shape="rect"> + <rect x="85" y="13" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="89" y="25">HEX_VALUE</text></a><rect x="179" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="183" y="25">'</text> + <rect x="43" y="55" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="67">0x</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#hex-value" xlink:title="HEX_VALUE" shape="rect"> + <rect x="89" y="55" width="66" height="18" class="nonterminal"/> + <text class="nonterminal" x="93" y="67">HEX_VALUE</text></a><path class="line" d="m17 22 h2 m20 0 h4 m14 0 h4 m20 0 h4 m66 0 h4 m-94 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m74 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-74 0 h10 m0 0 h64 m20 21 h4 m8 0 h4 m-172 0 h20 m152 0 h20 m-192 0 q10 0 10 10 m172 0 q0 -10 10 -10 m-182 10 v22 m172 0 v-22 m-172 22 q0 10 10 10 m152 0 q10 0 10 -10 m-162 10 h4 m18 0 h4 m20 0 h4 m66 0 h4 m-94 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m74 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-74 0 h10 m0 0 h64 m20 21 h12 m23 -42 h-3"/> + <polygon points="221 22 229 18 229 26"/> + <polygon points="221 22 213 18 213 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-hex" title="S_HEX" shape="rect">S_HEX</a>    ::= "x'" <a href="#hex-value" title="HEX_VALUE" shape="rect">HEX_VALUE</a>+ "'"</div> + <div>           | '0x' <a href="#hex-value" title="HEX_VALUE" shape="rect">HEX_VALUE</a>+</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + HEX_VALUE +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="129" height="49"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <polygon points="43 10 46 1 82 1 85 10 82 19 46 19" class="regexp"/> + <text class="regexp" x="54" y="13">[0-9]</text> + <polygon points="43 38 46 29 80 29 83 38 80 47 46 47" class="regexp"/> + <text class="regexp" x="54" y="41">[A-F]</text> + <path class="line" d="m17 10 h2 m20 0 h4 m42 0 h4 m-70 0 h20 m50 0 h20 m-90 0 q10 0 10 10 m70 0 q0 -10 10 -10 m-80 10 v8 m70 0 v-8 m-70 8 q0 10 10 10 m50 0 q10 0 10 -10 m-60 10 h4 m40 0 h4 m0 0 h2 m23 -28 h-3"/> + <polygon points="119 10 127 6 127 14"/> + <polygon points="119 10 111 6 111 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#hex-value" title="HEX_VALUE" shape="rect">HEX_VALUE</a></div> + <div>         ::= [0-9A-F]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#s-hex" title="s-hex">s-hex</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + LINE_COMMENT +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="267" height="61"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">--</text> + <rect x="43" y="41" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="53">//</text> + <polygon points="129 22 132 13 200 13 203 22 200 31 132 31" class="regexp"/> + <text class="regexp" x="140" y="25">[^#xD#xA]</text> + <path class="line" d="m17 22 h2 m20 0 h4 m14 0 h4 m0 0 h4 m-46 0 h20 m26 0 h20 m-66 0 q10 0 10 10 m46 0 q0 -10 10 -10 m-56 10 v8 m46 0 v-8 m-46 8 q0 10 10 10 m26 0 q10 0 10 -10 m-36 10 h4 m18 0 h4 m60 -28 h4 m74 0 h4 m-102 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m82 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-82 0 h10 m0 0 h72 m-122 21 h20 m122 0 h20 m-162 0 q10 0 10 10 m142 0 q0 -10 10 -10 m-152 10 v1 m142 0 v-1 m-142 1 q0 10 10 10 m122 0 q10 0 10 -10 m-132 10 h10 m0 0 h112 m23 -21 h-3"/> + <polygon points="257 22 265 18 265 26"/> + <polygon points="257 22 249 18 249 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#line-comment" title="LINE_COMMENT" shape="rect">LINE_COMMENT</a></div> + <div>         ::= ( '--' | '//' ) [^#xD#xA]*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + MULTI_LINE_COMMENT +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="433" height="99"> + <polygon points="9 76 1 72 1 80"/> + <polygon points="17 76 9 72 9 80"/> + <rect x="23" y="67" width="18" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="79">/*</text> + <polygon points="89 76 92 67 126 67 129 76 126 85 92 85" class="regexp"/> + <text class="regexp" x="100" y="79">[^*]</text> + <rect x="197" y="67" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="201" y="79">*</text> + <polygon points="237 34 240 25 274 25 277 34 274 43 240 43" class="regexp"/> + <text class="regexp" x="248" y="37">[^*]</text> + <polygon points="325 34 328 25 366 25 369 34 366 43 328 43" class="regexp"/> + <text class="regexp" x="336" y="37">[^*/]</text> + <rect x="397" y="67" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="401" y="79">/</text> + <path class="line" d="m17 76 h2 m0 0 h4 m18 0 h4 m40 0 h4 m40 0 h4 m-68 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m48 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-48 0 h10 m0 0 h38 m-88 21 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v1 m108 0 v-1 m-108 1 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h10 m0 0 h78 m40 -21 h4 m14 0 h4 m0 0 h158 m-200 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -22 q0 -10 10 -10 m180 42 l20 0 m-20 0 q10 0 10 -10 l0 -22 q0 -10 -10 -10 m-140 0 h4 m40 0 h4 m-68 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m48 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-48 0 h10 m0 0 h38 m-88 21 h20 m88 0 h20 m-128 0 q10 0 10 10 m108 0 q0 -10 10 -10 m-118 10 v1 m108 0 v-1 m-108 1 q0 10 10 10 m88 0 q10 0 10 -10 m-98 10 h10 m0 0 h78 m20 -21 h4 m44 0 h4 m-190 10 l0 -33 q0 -10 10 -10 m190 43 l0 -33 q0 -10 -10 -10 m-180 0 h10 m0 0 h170 m20 75 h4 m12 0 h4 m3 0 h-3"/> + <polygon points="423 76 431 72 431 80"/> + <polygon points="423 76 415 72 415 80"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#multi-line-comment" title="MULTI_LINE_COMMENT" shape="rect">MULTI_LINE_COMMENT</a></div> + <div>         ::= '/*' [^*]* '*' ( ( [^*/] [^*]* )? '*' )* '/'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Not referenced by any. + </div></td></tr></tbody></table> + + +====================================================================================================================== + S_IDENTIFIER +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="209" height="42"> + <polygon points="9 31 1 27 1 35"/> + <polygon points="17 31 9 27 9 35"/><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#letter" xlink:title="LETTER" shape="rect"> + <rect x="23" y="22" width="42" height="18" class="nonterminal"/> + <text class="nonterminal" x="27" y="34">LETTER</text></a><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#part-letter" xlink:title="PART_LETTER" shape="rect"> + <rect x="93" y="1" width="72" height="18" class="nonterminal"/> + <text class="nonterminal" x="97" y="13">PART_LETTER</text></a><path class="line" d="m17 31 h2 m0 0 h4 m42 0 h4 m20 0 h10 m0 0 h70 m-100 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m80 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-80 0 h4 m72 0 h4 m23 21 h-3"/> + <polygon points="199 31 207 27 207 35"/> + <polygon points="199 31 191 27 191 35"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-identifier" title="S_IDENTIFIER" shape="rect">S_IDENTIFIER</a></div> + <div>         ::= <a href="#letter" title="LETTER" shape="rect">LETTER</a> <a href="#part-letter" title="PART_LETTER" shape="rect">PART_LETTER</a>*</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#altersession" title="altersession">altersession</a></li><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#createindex" title="createindex">createindex</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#createschema" title="createschema">createschema</a></li><li><a href="#drop" title="drop">drop</a></li><li><a href="#first" title="first">first</a></li><li><a href="#grant" title="grant">grant</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#joinwindow" title="joinwindow">joinwindow</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#ksqlwindowclause" title="ksqlwindowclause">ksqlwindowclause</a></li><li><a href="#keepexpression" title="keepexpression">keepexpression</a></li><li><a href="#pathspecification" title="pathspecification">pathspecification</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#purgestatement" title="purgestatement">purgestatement</a></li><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li><li><a href="#rollbackstatement" title="rollbackstatement">rollbackstatement</a></li><li><a href="#savepointstatement" title="savepointstatement">savepointstatement</a></li><li><a href="#skip" title="skip">skip</a></li><li><a href="#top" title="top">top</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + LETTER +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="193" height="7581"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">$</text> + <polygon points="43 38 46 29 82 29 85 38 82 47 46 47" class="regexp"/> + <text class="regexp" x="54" y="41">[A-Z]</text> + <rect x="43" y="57" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="69">_</text> + <polygon points="43 94 46 85 80 85 83 94 80 103 46 103" class="regexp"/> + <text class="regexp" x="54" y="97">[a-z]</text> + <polygon points="43 122 46 113 92 113 95 122 92 131 46 131" class="regexp"/> + <text class="regexp" x="54" y="125">[#x23]</text> + <polygon points="43 150 46 141 120 141 123 150 120 159 46 159" class="regexp"/> + <text class="regexp" x="54" y="153">[#xA2-#xA5]</text> + <polygon points="43 178 46 169 92 169 95 178 92 187 46 187" class="regexp"/> + <text class="regexp" x="54" y="181">[#xAA]</text> + <polygon points="43 206 46 197 92 197 95 206 92 215 46 215" class="regexp"/> + <text class="regexp" x="54" y="209">[#xB5]</text> + <polygon points="43 234 46 225 92 225 95 234 92 243 46 243" class="regexp"/> + <text class="regexp" x="54" y="237">[#xBA]</text> + <polygon points="43 262 46 253 122 253 125 262 122 271 46 271" class="regexp"/> + <text class="regexp" x="54" y="265">[#xC0-#xD6]</text> + <polygon points="43 290 46 281 120 281 123 290 120 299 46 299" class="regexp"/> + <text class="regexp" x="54" y="293">[#xD8-#xF6]</text> + <polygon points="43 318 46 309 124 309 127 318 124 327 46 327" class="regexp"/> + <text class="regexp" x="54" y="321">[#xF8-#x21F]</text> + <polygon points="43 346 46 337 132 337 135 346 132 355 46 355" class="regexp"/> + <text class="regexp" x="54" y="349">[#x222-#x233]</text> + <polygon points="43 374 46 365 132 365 135 374 132 383 46 383" class="regexp"/> + <text class="regexp" x="54" y="377">[#x250-#x2AD]</text> + <polygon points="43 402 46 393 132 393 135 402 132 411 46 411" class="regexp"/> + <text class="regexp" x="54" y="405">[#x2B0-#x2B8]</text> + <polygon points="43 430 46 421 132 421 135 430 132 439 46 439" class="regexp"/> + <text class="regexp" x="54" y="433">[#x2BB-#x2C1]</text> + <polygon points="43 458 46 449 134 449 137 458 134 467 46 467" class="regexp"/> + <text class="regexp" x="54" y="461">[#x2D0-#x2D1]</text> + <polygon points="43 486 46 477 132 477 135 486 132 495 46 495" class="regexp"/> + <text class="regexp" x="54" y="489">[#x2E0-#x2E4]</text> + <polygon points="43 514 46 505 98 505 101 514 98 523 46 523" class="regexp"/> + <text class="regexp" x="54" y="517">[#x2EE]</text> + <polygon points="43 542 46 533 98 533 101 542 98 551 46 551" class="regexp"/> + <text class="regexp" x="54" y="545">[#x37A]</text> + <polygon points="43 570 46 561 98 561 101 570 98 579 46 579" class="regexp"/> + <text class="regexp" x="54" y="573">[#x386]</text> + <polygon points="43 598 46 589 132 589 135 598 132 607 46 607" class="regexp"/> + <text class="regexp" x="54" y="601">[#x388-#x38A]</text> + <polygon points="43 626 46 617 98 617 101 626 98 635 46 635" class="regexp"/> + <text class="regexp" x="54" y="629">[#x38C]</text> + <polygon points="43 654 46 645 132 645 135 654 132 663 46 663" class="regexp"/> + <text class="regexp" x="54" y="657">[#x38E-#x3A1]</text> + <polygon points="43 682 46 673 132 673 135 682 132 691 46 691" class="regexp"/> + <text class="regexp" x="54" y="685">[#x3A3-#x3CE]</text> + <polygon points="43 710 46 701 134 701 137 710 134 719 46 719" class="regexp"/> + <text class="regexp" x="54" y="713">[#x3D0-#x3D7]</text> + <polygon points="43 738 46 729 132 729 135 738 132 747 46 747" class="regexp"/> + <text class="regexp" x="54" y="741">[#x3DA-#x3F3]</text> + <polygon points="43 766 46 757 132 757 135 766 132 775 46 775" class="regexp"/> + <text class="regexp" x="54" y="769">[#x400-#x481]</text> + <polygon points="43 794 46 785 134 785 137 794 134 803 46 803" class="regexp"/> + <text class="regexp" x="54" y="797">[#x48C-#x4C4]</text> + <polygon points="43 822 46 813 134 813 137 822 134 831 46 831" class="regexp"/> + <text class="regexp" x="54" y="825">[#x4C7-#x4C8]</text> + <polygon points="43 850 46 841 134 841 137 850 134 859 46 859" class="regexp"/> + <text class="regexp" x="54" y="853">[#x4CB-#x4CC]</text> + <polygon points="43 878 46 869 132 869 135 878 132 887 46 887" class="regexp"/> + <text class="regexp" x="54" y="881">[#x4D0-#x4F5]</text> + <polygon points="43 906 46 897 130 897 133 906 130 915 46 915" class="regexp"/> + <text class="regexp" x="54" y="909">[#x4F8-#x4F9]</text> + <polygon points="43 934 46 925 132 925 135 934 132 943 46 943" class="regexp"/> + <text class="regexp" x="54" y="937">[#x531-#x556]</text> + <polygon points="43 962 46 953 98 953 101 962 98 971 46 971" class="regexp"/> + <text class="regexp" x="54" y="965">[#x559]</text> + <polygon points="43 990 46 981 132 981 135 990 132 999 46 999" class="regexp"/> + <text class="regexp" x="54" y="993">[#x561-#x587]</text> + <polygon points="43 1018 46 1009 132 1009 135 1018 132 1027 46 1027" class="regexp"/> + <text class="regexp" x="54" y="1021">[#x5D0-#x5EA]</text> + <polygon points="43 1046 46 1037 130 1037 133 1046 130 1055 46 1055" class="regexp"/> + <text class="regexp" x="54" y="1049">[#x5F0-#x5F2]</text> + <polygon points="43 1074 46 1065 132 1065 135 1074 132 1083 46 1083" class="regexp"/> + <text class="regexp" x="54" y="1077">[#x621-#x63A]</text> + <polygon points="43 1102 46 1093 132 1093 135 1102 132 1111 46 1111" class="regexp"/> + <text class="regexp" x="54" y="1105">[#x640-#x64A]</text> + <polygon points="43 1130 46 1121 132 1121 135 1130 132 1139 46 1139" class="regexp"/> + <text class="regexp" x="54" y="1133">[#x671-#x6D3]</text> + <polygon points="43 1158 46 1149 98 1149 101 1158 98 1167 46 1167" class="regexp"/> + <text class="regexp" x="54" y="1161">[#x6D5]</text> + <polygon points="43 1186 46 1177 132 1177 135 1186 132 1195 46 1195" class="regexp"/> + <text class="regexp" x="54" y="1189">[#x6E5-#x6E6]</text> + <polygon points="43 1214 46 1205 130 1205 133 1214 130 1223 46 1223" class="regexp"/> + <text class="regexp" x="54" y="1217">[#x6FA-#x6FC]</text> + <polygon points="43 1242 46 1233 98 1233 101 1242 98 1251 46 1251" class="regexp"/> + <text class="regexp" x="54" y="1245">[#x710]</text> + <polygon points="43 1270 46 1261 132 1261 135 1270 132 1279 46 1279" class="regexp"/> + <text class="regexp" x="54" y="1273">[#x712-#x72C]</text> + <polygon points="43 1298 46 1289 132 1289 135 1298 132 1307 46 1307" class="regexp"/> + <text class="regexp" x="54" y="1301">[#x780-#x7A5]</text> + <polygon points="43 1326 46 1317 132 1317 135 1326 132 1335 46 1335" class="regexp"/> + <text class="regexp" x="54" y="1329">[#x905-#x939]</text> + <polygon points="43 1354 46 1345 98 1345 101 1354 98 1363 46 1363" class="regexp"/> + <text class="regexp" x="54" y="1357">[#x93D]</text> + <polygon points="43 1382 46 1373 98 1373 101 1382 98 1391 46 1391" class="regexp"/> + <text class="regexp" x="54" y="1385">[#x950]</text> + <polygon points="43 1410 46 1401 132 1401 135 1410 132 1419 46 1419" class="regexp"/> + <text class="regexp" x="54" y="1413">[#x958-#x961]</text> + <polygon points="43 1438 46 1429 132 1429 135 1438 132 1447 46 1447" class="regexp"/> + <text class="regexp" x="54" y="1441">[#x985-#x98C]</text> + <polygon points="43 1466 46 1457 130 1457 133 1466 130 1475 46 1475" class="regexp"/> + <text class="regexp" x="54" y="1469">[#x98F-#x990]</text> + <polygon points="43 1494 46 1485 132 1485 135 1494 132 1503 46 1503" class="regexp"/> + <text class="regexp" x="54" y="1497">[#x993-#x9A8]</text> + <polygon points="43 1522 46 1513 132 1513 135 1522 132 1531 46 1531" class="regexp"/> + <text class="regexp" x="54" y="1525">[#x9AA-#x9B0]</text> + <polygon points="43 1550 46 1541 98 1541 101 1550 98 1559 46 1559" class="regexp"/> + <text class="regexp" x="54" y="1553">[#x9B2]</text> + <polygon points="43 1578 46 1569 132 1569 135 1578 132 1587 46 1587" class="regexp"/> + <text class="regexp" x="54" y="1581">[#x9B6-#x9B9]</text> + <polygon points="43 1606 46 1597 136 1597 139 1606 136 1615 46 1615" class="regexp"/> + <text class="regexp" x="54" y="1609">[#x9DC-#x9DD]</text> + <polygon points="43 1634 46 1625 132 1625 135 1634 132 1643 46 1643" class="regexp"/> + <text class="regexp" x="54" y="1637">[#x9DF-#x9E1]</text> + <polygon points="43 1662 46 1653 130 1653 133 1662 130 1671 46 1671" class="regexp"/> + <text class="regexp" x="54" y="1665">[#x9F0-#x9F3]</text> + <polygon points="43 1690 46 1681 132 1681 135 1690 132 1699 46 1699" class="regexp"/> + <text class="regexp" x="54" y="1693">[#xA05-#xA0A]</text> + <polygon points="43 1718 46 1709 130 1709 133 1718 130 1727 46 1727" class="regexp"/> + <text class="regexp" x="54" y="1721">[#xA0F-#xA10]</text> + <polygon points="43 1746 46 1737 132 1737 135 1746 132 1755 46 1755" class="regexp"/> + <text class="regexp" x="54" y="1749">[#xA13-#xA28]</text> + <polygon points="43 1774 46 1765 132 1765 135 1774 132 1783 46 1783" class="regexp"/> + <text class="regexp" x="54" y="1777">[#xA2A-#xA30]</text> + <polygon points="43 1802 46 1793 132 1793 135 1802 132 1811 46 1811" class="regexp"/> + <text class="regexp" x="54" y="1805">[#xA32-#xA33]</text> + <polygon points="43 1830 46 1821 132 1821 135 1830 132 1839 46 1839" class="regexp"/> + <text class="regexp" x="54" y="1833">[#xA35-#xA36]</text> + <polygon points="43 1858 46 1849 132 1849 135 1858 132 1867 46 1867" class="regexp"/> + <text class="regexp" x="54" y="1861">[#xA38-#xA39]</text> + <polygon points="43 1886 46 1877 132 1877 135 1886 132 1895 46 1895" class="regexp"/> + <text class="regexp" x="54" y="1889">[#xA59-#xA5C]</text> + <polygon points="43 1914 46 1905 98 1905 101 1914 98 1923 46 1923" class="regexp"/> + <text class="regexp" x="54" y="1917">[#xA5E]</text> + <polygon points="43 1942 46 1933 132 1933 135 1942 132 1951 46 1951" class="regexp"/> + <text class="regexp" x="54" y="1945">[#xA72-#xA74]</text> + <polygon points="43 1970 46 1961 132 1961 135 1970 132 1979 46 1979" class="regexp"/> + <text class="regexp" x="54" y="1973">[#xA85-#xA8B]</text> + <polygon points="43 1998 46 1989 98 1989 101 1998 98 2007 46 2007" class="regexp"/> + <text class="regexp" x="54" y="2001">[#xA8D]</text> + <polygon points="43 2026 46 2017 130 2017 133 2026 130 2035 46 2035" class="regexp"/> + <text class="regexp" x="54" y="2029">[#xA8F-#xA91]</text> + <polygon points="43 2054 46 2045 132 2045 135 2054 132 2063 46 2063" class="regexp"/> + <text class="regexp" x="54" y="2057">[#xA93-#xAA8]</text> + <polygon points="43 2082 46 2073 132 2073 135 2082 132 2091 46 2091" class="regexp"/> + <text class="regexp" x="54" y="2085">[#xAAA-#xAB0]</text> + <polygon points="43 2110 46 2101 132 2101 135 2110 132 2119 46 2119" class="regexp"/> + <text class="regexp" x="54" y="2113">[#xAB2-#xAB3]</text> + <polygon points="43 2138 46 2129 132 2129 135 2138 132 2147 46 2147" class="regexp"/> + <text class="regexp" x="54" y="2141">[#xAB5-#xAB9]</text> + <polygon points="43 2166 46 2157 98 2157 101 2166 98 2175 46 2175" class="regexp"/> + <text class="regexp" x="54" y="2169">[#xABD]</text> + <polygon points="43 2194 46 2185 98 2185 101 2194 98 2203 46 2203" class="regexp"/> + <text class="regexp" x="54" y="2197">[#xAD0]</text> + <polygon points="43 2222 46 2213 98 2213 101 2222 98 2231 46 2231" class="regexp"/> + <text class="regexp" x="54" y="2225">[#xAE0]</text> + <polygon points="43 2250 46 2241 132 2241 135 2250 132 2259 46 2259" class="regexp"/> + <text class="regexp" x="54" y="2253">[#xB05-#xB0C]</text> + <polygon points="43 2278 46 2269 130 2269 133 2278 130 2287 46 2287" class="regexp"/> + <text class="regexp" x="54" y="2281">[#xB0F-#xB10]</text> + <polygon points="43 2306 46 2297 132 2297 135 2306 132 2315 46 2315" class="regexp"/> + <text class="regexp" x="54" y="2309">[#xB13-#xB28]</text> + <polygon points="43 2334 46 2325 132 2325 135 2334 132 2343 46 2343" class="regexp"/> + <text class="regexp" x="54" y="2337">[#xB2A-#xB30]</text> + <polygon points="43 2362 46 2353 132 2353 135 2362 132 2371 46 2371" class="regexp"/> + <text class="regexp" x="54" y="2365">[#xB32-#xB33]</text> + <polygon points="43 2390 46 2381 132 2381 135 2390 132 2399 46 2399" class="regexp"/> + <text class="regexp" x="54" y="2393">[#xB36-#xB39]</text> + <polygon points="43 2418 46 2409 98 2409 101 2418 98 2427 46 2427" class="regexp"/> + <text class="regexp" x="54" y="2421">[#xB3D]</text> + <polygon points="43 2446 46 2437 134 2437 137 2446 134 2455 46 2455" class="regexp"/> + <text class="regexp" x="54" y="2449">[#xB5C-#xB5D]</text> + <polygon points="43 2474 46 2465 130 2465 133 2474 130 2483 46 2483" class="regexp"/> + <text class="regexp" x="54" y="2477">[#xB5F-#xB61]</text> + <polygon points="43 2502 46 2493 132 2493 135 2502 132 2511 46 2511" class="regexp"/> + <text class="regexp" x="54" y="2505">[#xB85-#xB8A]</text> + <polygon points="43 2530 46 2521 132 2521 135 2530 132 2539 46 2539" class="regexp"/> + <text class="regexp" x="54" y="2533">[#xB8E-#xB90]</text> + <polygon points="43 2558 46 2549 132 2549 135 2558 132 2567 46 2567" class="regexp"/> + <text class="regexp" x="54" y="2561">[#xB92-#xB95]</text> + <polygon points="43 2586 46 2577 132 2577 135 2586 132 2595 46 2595" class="regexp"/> + <text class="regexp" x="54" y="2589">[#xB99-#xB9A]</text> + <polygon points="43 2614 46 2605 98 2605 101 2614 98 2623 46 2623" class="regexp"/> + <text class="regexp" x="54" y="2617">[#xB9C]</text> + <polygon points="43 2642 46 2633 130 2633 133 2642 130 2651 46 2651" class="regexp"/> + <text class="regexp" x="54" y="2645">[#xB9E-#xB9F]</text> + <polygon points="43 2670 46 2661 132 2661 135 2670 132 2679 46 2679" class="regexp"/> + <text class="regexp" x="54" y="2673">[#xBA3-#xBA4]</text> + <polygon points="43 2698 46 2689 132 2689 135 2698 132 2707 46 2707" class="regexp"/> + <text class="regexp" x="54" y="2701">[#xBA8-#xBAA]</text> + <polygon points="43 2726 46 2717 132 2717 135 2726 132 2735 46 2735" class="regexp"/> + <text class="regexp" x="54" y="2729">[#xBAE-#xBB5]</text> + <polygon points="43 2754 46 2745 132 2745 135 2754 132 2763 46 2763" class="regexp"/> + <text class="regexp" x="54" y="2757">[#xBB7-#xBB9]</text> + <polygon points="43 2782 46 2773 134 2773 137 2782 134 2791 46 2791" class="regexp"/> + <text class="regexp" x="54" y="2785">[#xC05-#xC0C]</text> + <polygon points="43 2810 46 2801 134 2801 137 2810 134 2819 46 2819" class="regexp"/> + <text class="regexp" x="54" y="2813">[#xC0E-#xC10]</text> + <polygon points="43 2838 46 2829 134 2829 137 2838 134 2847 46 2847" class="regexp"/> + <text class="regexp" x="54" y="2841">[#xC12-#xC28]</text> + <polygon points="43 2866 46 2857 134 2857 137 2866 134 2875 46 2875" class="regexp"/> + <text class="regexp" x="54" y="2869">[#xC2A-#xC33]</text> + <polygon points="43 2894 46 2885 134 2885 137 2894 134 2903 46 2903" class="regexp"/> + <text class="regexp" x="54" y="2897">[#xC35-#xC39]</text> + <polygon points="43 2922 46 2913 134 2913 137 2922 134 2931 46 2931" class="regexp"/> + <text class="regexp" x="54" y="2925">[#xC60-#xC61]</text> + <polygon points="43 2950 46 2941 134 2941 137 2950 134 2959 46 2959" class="regexp"/> + <text class="regexp" x="54" y="2953">[#xC85-#xC8C]</text> + <polygon points="43 2978 46 2969 134 2969 137 2978 134 2987 46 2987" class="regexp"/> + <text class="regexp" x="54" y="2981">[#xC8E-#xC90]</text> + <polygon points="43 3006 46 2997 134 2997 137 3006 134 3015 46 3015" class="regexp"/> + <text class="regexp" x="54" y="3009">[#xC92-#xCA8]</text> + <polygon points="43 3034 46 3025 134 3025 137 3034 134 3043 46 3043" class="regexp"/> + <text class="regexp" x="54" y="3037">[#xCAA-#xCB3]</text> + <polygon points="43 3062 46 3053 134 3053 137 3062 134 3071 46 3071" class="regexp"/> + <text class="regexp" x="54" y="3065">[#xCB5-#xCB9]</text> + <polygon points="43 3090 46 3081 100 3081 103 3090 100 3099 46 3099" class="regexp"/> + <text class="regexp" x="54" y="3093">[#xCDE]</text> + <polygon points="43 3118 46 3109 134 3109 137 3118 134 3127 46 3127" class="regexp"/> + <text class="regexp" x="54" y="3121">[#xCE0-#xCE1]</text> + <polygon points="43 3146 46 3137 134 3137 137 3146 134 3155 46 3155" class="regexp"/> + <text class="regexp" x="54" y="3149">[#xD05-#xD0C]</text> + <polygon points="43 3174 46 3165 134 3165 137 3174 134 3183 46 3183" class="regexp"/> + <text class="regexp" x="54" y="3177">[#xD0E-#xD10]</text> + <polygon points="43 3202 46 3193 134 3193 137 3202 134 3211 46 3211" class="regexp"/> + <text class="regexp" x="54" y="3205">[#xD12-#xD28]</text> + <polygon points="43 3230 46 3221 134 3221 137 3230 134 3239 46 3239" class="regexp"/> + <text class="regexp" x="54" y="3233">[#xD2A-#xD39]</text> + <polygon points="43 3258 46 3249 134 3249 137 3258 134 3267 46 3267" class="regexp"/> + <text class="regexp" x="54" y="3261">[#xD60-#xD61]</text> + <polygon points="43 3286 46 3277 134 3277 137 3286 134 3295 46 3295" class="regexp"/> + <text class="regexp" x="54" y="3289">[#xD85-#xD96]</text> + <polygon points="43 3314 46 3305 134 3305 137 3314 134 3323 46 3323" class="regexp"/> + <text class="regexp" x="54" y="3317">[#xD9A-#xDB1]</text> + <polygon points="43 3342 46 3333 134 3333 137 3342 134 3351 46 3351" class="regexp"/> + <text class="regexp" x="54" y="3345">[#xDB3-#xDBB]</text> + <polygon points="43 3370 46 3361 100 3361 103 3370 100 3379 46 3379" class="regexp"/> + <text class="regexp" x="54" y="3373">[#xDBD]</text> + <polygon points="43 3398 46 3389 136 3389 139 3398 136 3407 46 3407" class="regexp"/> + <text class="regexp" x="54" y="3401">[#xDC0-#xDC6]</text> + <polygon points="43 3426 46 3417 132 3417 135 3426 132 3435 46 3435" class="regexp"/> + <text class="regexp" x="54" y="3429">[#xE01-#xE30]</text> + <polygon points="43 3454 46 3445 132 3445 135 3454 132 3463 46 3463" class="regexp"/> + <text class="regexp" x="54" y="3457">[#xE32-#xE33]</text> + <polygon points="43 3482 46 3473 130 3473 133 3482 130 3491 46 3491" class="regexp"/> + <text class="regexp" x="54" y="3485">[#xE3F-#xE46]</text> + <polygon points="43 3510 46 3501 132 3501 135 3510 132 3519 46 3519" class="regexp"/> + <text class="regexp" x="54" y="3513">[#xE81-#xE82]</text> + <polygon points="43 3538 46 3529 98 3529 101 3538 98 3547 46 3547" class="regexp"/> + <text class="regexp" x="54" y="3541">[#xE84]</text> + <polygon points="43 3566 46 3557 132 3557 135 3566 132 3575 46 3575" class="regexp"/> + <text class="regexp" x="54" y="3569">[#xE87-#xE88]</text> + <polygon points="43 3594 46 3585 98 3585 101 3594 98 3603 46 3603" class="regexp"/> + <text class="regexp" x="54" y="3597">[#xE8A]</text> + <polygon points="43 3622 46 3613 98 3613 101 3622 98 3631 46 3631" class="regexp"/> + <text class="regexp" x="54" y="3625">[#xE8D]</text> + <polygon points="43 3650 46 3641 132 3641 135 3650 132 3659 46 3659" class="regexp"/> + <text class="regexp" x="54" y="3653">[#xE94-#xE97]</text> + <polygon points="43 3678 46 3669 130 3669 133 3678 130 3687 46 3687" class="regexp"/> + <text class="regexp" x="54" y="3681">[#xE99-#xE9F]</text> + <polygon points="43 3706 46 3697 132 3697 135 3706 132 3715 46 3715" class="regexp"/> + <text class="regexp" x="54" y="3709">[#xEA1-#xEA3]</text> + <polygon points="43 3734 46 3725 98 3725 101 3734 98 3743 46 3743" class="regexp"/> + <text class="regexp" x="54" y="3737">[#xEA5]</text> + <polygon points="43 3762 46 3753 98 3753 101 3762 98 3771 46 3771" class="regexp"/> + <text class="regexp" x="54" y="3765">[#xEA7]</text> + <polygon points="43 3790 46 3781 132 3781 135 3790 132 3799 46 3799" class="regexp"/> + <text class="regexp" x="54" y="3793">[#xEAA-#xEAB]</text> + <polygon points="43 3818 46 3809 134 3809 137 3818 134 3827 46 3827" class="regexp"/> + <text class="regexp" x="54" y="3821">[#xEAD-#xEB0]</text> + <polygon points="43 3846 46 3837 132 3837 135 3846 132 3855 46 3855" class="regexp"/> + <text class="regexp" x="54" y="3849">[#xEB2-#xEB3]</text> + <polygon points="43 3874 46 3865 98 3865 101 3874 98 3883 46 3883" class="regexp"/> + <text class="regexp" x="54" y="3877">[#xEBD]</text> + <polygon points="43 3902 46 3893 134 3893 137 3902 134 3911 46 3911" class="regexp"/> + <text class="regexp" x="54" y="3905">[#xEC0-#xEC4]</text> + <polygon points="43 3930 46 3921 98 3921 101 3930 98 3939 46 3939" class="regexp"/> + <text class="regexp" x="54" y="3933">[#xEC6]</text> + <polygon points="43 3958 46 3949 136 3949 139 3958 136 3967 46 3967" class="regexp"/> + <text class="regexp" x="54" y="3961">[#xEDC-#xEDD]</text> + <polygon points="43 3986 46 3977 96 3977 99 3986 96 3995 46 3995" class="regexp"/> + <text class="regexp" x="54" y="3989">[#xF00]</text> + <polygon points="43 4014 46 4005 130 4005 133 4014 130 4023 46 4023" class="regexp"/> + <text class="regexp" x="54" y="4017">[#xF40-#xF47]</text> + <polygon points="43 4042 46 4033 130 4033 133 4042 130 4051 46 4051" class="regexp"/> + <text class="regexp" x="54" y="4045">[#xF49-#xF6A]</text> + <polygon points="43 4070 46 4061 130 4061 133 4070 130 4079 46 4079" class="regexp"/> + <text class="regexp" x="54" y="4073">[#xF88-#xF8B]</text> + <polygon points="43 4098 46 4089 144 4089 147 4098 144 4107 46 4107" class="regexp"/> + <text class="regexp" x="54" y="4101">[#x1000-#x1021]</text> + <polygon points="43 4126 46 4117 144 4117 147 4126 144 4135 46 4135" class="regexp"/> + <text class="regexp" x="54" y="4129">[#x1023-#x1027]</text> + <polygon points="43 4154 46 4145 144 4145 147 4154 144 4163 46 4163" class="regexp"/> + <text class="regexp" x="54" y="4157">[#x1029-#x102A]</text> + <polygon points="43 4182 46 4173 144 4173 147 4182 144 4191 46 4191" class="regexp"/> + <text class="regexp" x="54" y="4185">[#x1050-#x1055]</text> + <polygon points="43 4210 46 4201 144 4201 147 4210 144 4219 46 4219" class="regexp"/> + <text class="regexp" x="54" y="4213">[#x10A0-#x10C5]</text> + <polygon points="43 4238 46 4229 144 4229 147 4238 144 4247 46 4247" class="regexp"/> + <text class="regexp" x="54" y="4241">[#x10D0-#x10F6]</text> + <polygon points="43 4266 46 4257 144 4257 147 4266 144 4275 46 4275" class="regexp"/> + <text class="regexp" x="54" y="4269">[#x1100-#x1159]</text> + <polygon points="43 4294 46 4285 142 4285 145 4294 142 4303 46 4303" class="regexp"/> + <text class="regexp" x="54" y="4297">[#x115F-#x11A2]</text> + <polygon points="43 4322 46 4313 142 4313 145 4322 142 4331 46 4331" class="regexp"/> + <text class="regexp" x="54" y="4325">[#x11A8-#x11F9]</text> + <polygon points="43 4350 46 4341 144 4341 147 4350 144 4359 46 4359" class="regexp"/> + <text class="regexp" x="54" y="4353">[#x1200-#x1206]</text> + <polygon points="43 4378 46 4369 144 4369 147 4378 144 4387 46 4387" class="regexp"/> + <text class="regexp" x="54" y="4381">[#x1208-#x1246]</text> + <polygon points="43 4406 46 4397 104 4397 107 4406 104 4415 46 4415" class="regexp"/> + <text class="regexp" x="54" y="4409">[#x1248]</text> + <polygon points="43 4434 46 4425 144 4425 147 4434 144 4443 46 4443" class="regexp"/> + <text class="regexp" x="54" y="4437">[#x124A-#x124D]</text> + <polygon points="43 4462 46 4453 144 4453 147 4462 144 4471 46 4471" class="regexp"/> + <text class="regexp" x="54" y="4465">[#x1250-#x1256]</text> + <polygon points="43 4490 46 4481 104 4481 107 4490 104 4499 46 4499" class="regexp"/> + <text class="regexp" x="54" y="4493">[#x1258]</text> + <polygon points="43 4518 46 4509 144 4509 147 4518 144 4527 46 4527" class="regexp"/> + <text class="regexp" x="54" y="4521">[#x125A-#x125D]</text> + <polygon points="43 4546 46 4537 144 4537 147 4546 144 4555 46 4555" class="regexp"/> + <text class="regexp" x="54" y="4549">[#x1260-#x1286]</text> + <polygon points="43 4574 46 4565 104 4565 107 4574 104 4583 46 4583" class="regexp"/> + <text class="regexp" x="54" y="4577">[#x1288]</text> + <polygon points="43 4602 46 4593 144 4593 147 4602 144 4611 46 4611" class="regexp"/> + <text class="regexp" x="54" y="4605">[#x128A-#x128D]</text> + <polygon points="43 4630 46 4621 144 4621 147 4630 144 4639 46 4639" class="regexp"/> + <text class="regexp" x="54" y="4633">[#x1290-#x12AE]</text> + <polygon points="43 4658 46 4649 104 4649 107 4658 104 4667 46 4667" class="regexp"/> + <text class="regexp" x="54" y="4661">[#x12B0]</text> + <polygon points="43 4686 46 4677 144 4677 147 4686 144 4695 46 4695" class="regexp"/> + <text class="regexp" x="54" y="4689">[#x12B2-#x12B5]</text> + <polygon points="43 4714 46 4705 144 4705 147 4714 144 4723 46 4723" class="regexp"/> + <text class="regexp" x="54" y="4717">[#x12B8-#x12BE]</text> + <polygon points="43 4742 46 4733 104 4733 107 4742 104 4751 46 4751" class="regexp"/> + <text class="regexp" x="54" y="4745">[#x12C0]</text> + <polygon points="43 4770 46 4761 146 4761 149 4770 146 4779 46 4779" class="regexp"/> + <text class="regexp" x="54" y="4773">[#x12C2-#x12C5]</text> + <polygon points="43 4798 46 4789 146 4789 149 4798 146 4807 46 4807" class="regexp"/> + <text class="regexp" x="54" y="4801">[#x12C8-#x12CE]</text> + <polygon points="43 4826 46 4817 146 4817 149 4826 146 4835 46 4835" class="regexp"/> + <text class="regexp" x="54" y="4829">[#x12D0-#x12D6]</text> + <polygon points="43 4854 46 4845 144 4845 147 4854 144 4863 46 4863" class="regexp"/> + <text class="regexp" x="54" y="4857">[#x12D8-#x12EE]</text> + <polygon points="43 4882 46 4873 142 4873 145 4882 142 4891 46 4891" class="regexp"/> + <text class="regexp" x="54" y="4885">[#x12F0-#x130E]</text> + <polygon points="43 4910 46 4901 104 4901 107 4910 104 4919 46 4919" class="regexp"/> + <text class="regexp" x="54" y="4913">[#x1310]</text> + <polygon points="43 4938 46 4929 144 4929 147 4938 144 4947 46 4947" class="regexp"/> + <text class="regexp" x="54" y="4941">[#x1312-#x1315]</text> + <polygon points="43 4966 46 4957 144 4957 147 4966 144 4975 46 4975" class="regexp"/> + <text class="regexp" x="54" y="4969">[#x1318-#x131E]</text> + <polygon points="43 4994 46 4985 144 4985 147 4994 144 5003 46 5003" class="regexp"/> + <text class="regexp" x="54" y="4997">[#x1320-#x1346]</text> + <polygon points="43 5022 46 5013 144 5013 147 5022 144 5031 46 5031" class="regexp"/> + <text class="regexp" x="54" y="5025">[#x1348-#x135A]</text> + <polygon points="43 5050 46 5041 142 5041 145 5050 142 5059 46 5059" class="regexp"/> + <text class="regexp" x="54" y="5053">[#x13A0-#x13F4]</text> + <polygon points="43 5078 46 5069 144 5069 147 5078 144 5087 46 5087" class="regexp"/> + <text class="regexp" x="54" y="5081">[#x1401-#x166C]</text> + <polygon points="43 5106 46 5097 142 5097 145 5106 142 5115 46 5115" class="regexp"/> + <text class="regexp" x="54" y="5109">[#x166F-#x1676]</text> + <polygon points="43 5134 46 5125 144 5125 147 5134 144 5143 46 5143" class="regexp"/> + <text class="regexp" x="54" y="5137">[#x1681-#x169A]</text> + <polygon points="43 5162 46 5153 144 5153 147 5162 144 5171 46 5171" class="regexp"/> + <text class="regexp" x="54" y="5165">[#x16A0-#x16EA]</text> + <polygon points="43 5190 46 5181 144 5181 147 5190 144 5199 46 5199" class="regexp"/> + <text class="regexp" x="54" y="5193">[#x1780-#x17B3]</text> + <polygon points="43 5218 46 5209 104 5209 107 5218 104 5227 46 5227" class="regexp"/> + <text class="regexp" x="54" y="5221">[#x17DB]</text> + <polygon points="43 5246 46 5237 144 5237 147 5246 144 5255 46 5255" class="regexp"/> + <text class="regexp" x="54" y="5249">[#x1820-#x1877]</text> + <polygon points="43 5274 46 5265 144 5265 147 5274 144 5283 46 5283" class="regexp"/> + <text class="regexp" x="54" y="5277">[#x1880-#x18A8]</text> + <polygon points="43 5302 46 5293 144 5293 147 5302 144 5311 46 5311" class="regexp"/> + <text class="regexp" x="54" y="5305">[#x1E00-#x1E9B]</text> + <polygon points="43 5330 46 5321 142 5321 145 5330 142 5339 46 5339" class="regexp"/> + <text class="regexp" x="54" y="5333">[#x1EA0-#x1EF9]</text> + <polygon points="43 5358 46 5349 142 5349 145 5358 142 5367 46 5367" class="regexp"/> + <text class="regexp" x="54" y="5361">[#x1F00-#x1F15]</text> + <polygon points="43 5386 46 5377 142 5377 145 5386 142 5395 46 5395" class="regexp"/> + <text class="regexp" x="54" y="5389">[#x1F18-#x1F1D]</text> + <polygon points="43 5414 46 5405 142 5405 145 5414 142 5423 46 5423" class="regexp"/> + <text class="regexp" x="54" y="5417">[#x1F20-#x1F45]</text> + <polygon points="43 5442 46 5433 142 5433 145 5442 142 5451 46 5451" class="regexp"/> + <text class="regexp" x="54" y="5445">[#x1F48-#x1F4D]</text> + <polygon points="43 5470 46 5461 142 5461 145 5470 142 5479 46 5479" class="regexp"/> + <text class="regexp" x="54" y="5473">[#x1F50-#x1F57]</text> + <polygon points="43 5498 46 5489 102 5489 105 5498 102 5507 46 5507" class="regexp"/> + <text class="regexp" x="54" y="5501">[#x1F59]</text> + <polygon points="43 5526 46 5517 102 5517 105 5526 102 5535 46 5535" class="regexp"/> + <text class="regexp" x="54" y="5529">[#x1F5B]</text> + <polygon points="43 5554 46 5545 104 5545 107 5554 104 5563 46 5563" class="regexp"/> + <text class="regexp" x="54" y="5557">[#x1F5D]</text> + <polygon points="43 5582 46 5573 142 5573 145 5582 142 5591 46 5591" class="regexp"/> + <text class="regexp" x="54" y="5585">[#x1F5F-#x1F7D]</text> + <polygon points="43 5610 46 5601 142 5601 145 5610 142 5619 46 5619" class="regexp"/> + <text class="regexp" x="54" y="5613">[#x1F80-#x1FB4]</text> + <polygon points="43 5638 46 5629 142 5629 145 5638 142 5647 46 5647" class="regexp"/> + <text class="regexp" x="54" y="5641">[#x1FB6-#x1FBC]</text> + <polygon points="43 5666 46 5657 102 5657 105 5666 102 5675 46 5675" class="regexp"/> + <text class="regexp" x="54" y="5669">[#x1FBE]</text> + <polygon points="43 5694 46 5685 144 5685 147 5694 144 5703 46 5703" class="regexp"/> + <text class="regexp" x="54" y="5697">[#x1FC2-#x1FC4]</text> + <polygon points="43 5722 46 5713 144 5713 147 5722 144 5731 46 5731" class="regexp"/> + <text class="regexp" x="54" y="5725">[#x1FC6-#x1FCC]</text> + <polygon points="43 5750 46 5741 144 5741 147 5750 144 5759 46 5759" class="regexp"/> + <text class="regexp" x="54" y="5753">[#x1FD0-#x1FD3]</text> + <polygon points="43 5778 46 5769 144 5769 147 5778 144 5787 46 5787" class="regexp"/> + <text class="regexp" x="54" y="5781">[#x1FD6-#x1FDB]</text> + <polygon points="43 5806 46 5797 142 5797 145 5806 142 5815 46 5815" class="regexp"/> + <text class="regexp" x="54" y="5809">[#x1FE0-#x1FEC]</text> + <polygon points="43 5834 46 5825 140 5825 143 5834 140 5843 46 5843" class="regexp"/> + <text class="regexp" x="54" y="5837">[#x1FF2-#x1FF4]</text> + <polygon points="43 5862 46 5853 140 5853 143 5862 140 5871 46 5871" class="regexp"/> + <text class="regexp" x="54" y="5865">[#x1FF6-#x1FFC]</text> + <polygon points="43 5890 46 5881 142 5881 145 5890 142 5899 46 5899" class="regexp"/> + <text class="regexp" x="54" y="5893">[#x203F-#x2040]</text> + <polygon points="43 5918 46 5909 102 5909 105 5918 102 5927 46 5927" class="regexp"/> + <text class="regexp" x="54" y="5921">[#x207F]</text> + <polygon points="43 5946 46 5937 142 5937 145 5946 142 5955 46 5955" class="regexp"/> + <text class="regexp" x="54" y="5949">[#x20A0-#x20AF]</text> + <polygon points="43 5974 46 5965 104 5965 107 5974 104 5983 46 5983" class="regexp"/> + <text class="regexp" x="54" y="5977">[#x2102]</text> + <polygon points="43 6002 46 5993 104 5993 107 6002 104 6011 46 6011" class="regexp"/> + <text class="regexp" x="54" y="6005">[#x2107]</text> + <polygon points="43 6030 46 6021 144 6021 147 6030 144 6039 46 6039" class="regexp"/> + <text class="regexp" x="54" y="6033">[#x210A-#x2113]</text> + <polygon points="43 6058 46 6049 104 6049 107 6058 104 6067 46 6067" class="regexp"/> + <text class="regexp" x="54" y="6061">[#x2115]</text> + <polygon points="43 6086 46 6077 144 6077 147 6086 144 6095 46 6095" class="regexp"/> + <text class="regexp" x="54" y="6089">[#x2119-#x211D]</text> + <polygon points="43 6114 46 6105 104 6105 107 6114 104 6123 46 6123" class="regexp"/> + <text class="regexp" x="54" y="6117">[#x2124]</text> + <polygon points="43 6142 46 6133 104 6133 107 6142 104 6151 46 6151" class="regexp"/> + <text class="regexp" x="54" y="6145">[#x2126]</text> + <polygon points="43 6170 46 6161 104 6161 107 6170 104 6179 46 6179" class="regexp"/> + <text class="regexp" x="54" y="6173">[#x2128]</text> + <polygon points="43 6198 46 6189 144 6189 147 6198 144 6207 46 6207" class="regexp"/> + <text class="regexp" x="54" y="6201">[#x212A-#x212D]</text> + <polygon points="43 6226 46 6217 142 6217 145 6226 142 6235 46 6235" class="regexp"/> + <text class="regexp" x="54" y="6229">[#x212F-#x2131]</text> + <polygon points="43 6254 46 6245 144 6245 147 6254 144 6263 46 6263" class="regexp"/> + <text class="regexp" x="54" y="6257">[#x2133-#x2139]</text> + <polygon points="43 6282 46 6273 144 6273 147 6282 144 6291 46 6291" class="regexp"/> + <text class="regexp" x="54" y="6285">[#x2160-#x2183]</text> + <polygon points="43 6310 46 6301 144 6301 147 6310 144 6319 46 6319" class="regexp"/> + <text class="regexp" x="54" y="6313">[#x3005-#x3007]</text> + <polygon points="43 6338 46 6329 144 6329 147 6338 144 6347 46 6347" class="regexp"/> + <text class="regexp" x="54" y="6341">[#x3021-#x3029]</text> + <polygon points="43 6366 46 6357 144 6357 147 6366 144 6375 46 6375" class="regexp"/> + <text class="regexp" x="54" y="6369">[#x3031-#x3035]</text> + <polygon points="43 6394 46 6385 144 6385 147 6394 144 6403 46 6403" class="regexp"/> + <text class="regexp" x="54" y="6397">[#x3038-#x303A]</text> + <polygon points="43 6422 46 6413 144 6413 147 6422 144 6431 46 6431" class="regexp"/> + <text class="regexp" x="54" y="6425">[#x3041-#x3094]</text> + <polygon points="43 6450 46 6441 144 6441 147 6450 144 6459 46 6459" class="regexp"/> + <text class="regexp" x="54" y="6453">[#x309D-#x309E]</text> + <polygon points="43 6478 46 6469 142 6469 145 6478 142 6487 46 6487" class="regexp"/> + <text class="regexp" x="54" y="6481">[#x30A1-#x30FE]</text> + <polygon points="43 6506 46 6497 144 6497 147 6506 144 6515 46 6515" class="regexp"/> + <text class="regexp" x="54" y="6509">[#x3105-#x312C]</text> + <polygon points="43 6534 46 6525 144 6525 147 6534 144 6543 46 6543" class="regexp"/> + <text class="regexp" x="54" y="6537">[#x3131-#x318E]</text> + <polygon points="43 6562 46 6553 144 6553 147 6562 144 6571 46 6571" class="regexp"/> + <text class="regexp" x="54" y="6565">[#x31A0-#x31B7]</text> + <polygon points="43 6590 46 6581 144 6581 147 6590 144 6599 46 6599" class="regexp"/> + <text class="regexp" x="54" y="6593">[#x3400-#x4DB5]</text> + <polygon points="43 6618 46 6609 142 6609 145 6618 142 6627 46 6627" class="regexp"/> + <text class="regexp" x="54" y="6621">[#x4E00-#x9FA5]</text> + <polygon points="43 6646 46 6637 144 6637 147 6646 144 6655 46 6655" class="regexp"/> + <text class="regexp" x="54" y="6649">[#xA000-#xA48C]</text> + <polygon points="43 6674 46 6665 146 6665 149 6674 146 6683 46 6683" class="regexp"/> + <text class="regexp" x="54" y="6677">[#xAC00-#xD7A3]</text> + <polygon points="43 6702 46 6693 142 6693 145 6702 142 6711 46 6711" class="regexp"/> + <text class="regexp" x="54" y="6705">[#xF900-#xFA2D]</text> + <polygon points="43 6730 46 6721 142 6721 145 6730 142 6739 46 6739" class="regexp"/> + <text class="regexp" x="54" y="6733">[#xFB00-#xFB06]</text> + <polygon points="43 6758 46 6749 142 6749 145 6758 142 6767 46 6767" class="regexp"/> + <text class="regexp" x="54" y="6761">[#xFB13-#xFB17]</text> + <polygon points="43 6786 46 6777 104 6777 107 6786 104 6795 46 6795" class="regexp"/> + <text class="regexp" x="54" y="6789">[#xFB1D]</text> + <polygon points="43 6814 46 6805 140 6805 143 6814 140 6823 46 6823" class="regexp"/> + <text class="regexp" x="54" y="6817">[#xFB1F-#xFB28]</text> + <polygon points="43 6842 46 6833 142 6833 145 6842 142 6851 46 6851" class="regexp"/> + <text class="regexp" x="54" y="6845">[#xFB2A-#xFB36]</text> + <polygon points="43 6870 46 6861 142 6861 145 6870 142 6879 46 6879" class="regexp"/> + <text class="regexp" x="54" y="6873">[#xFB38-#xFB3C]</text> + <polygon points="43 6898 46 6889 102 6889 105 6898 102 6907 46 6907" class="regexp"/> + <text class="regexp" x="54" y="6901">[#xFB3E]</text> + <polygon points="43 6926 46 6917 142 6917 145 6926 142 6935 46 6935" class="regexp"/> + <text class="regexp" x="54" y="6929">[#xFB40-#xFB41]</text> + <polygon points="43 6954 46 6945 142 6945 145 6954 142 6963 46 6963" class="regexp"/> + <text class="regexp" x="54" y="6957">[#xFB43-#xFB44]</text> + <polygon points="43 6982 46 6973 142 6973 145 6982 142 6991 46 6991" class="regexp"/> + <text class="regexp" x="54" y="6985">[#xFB46-#xFBB1]</text> + <polygon points="43 7010 46 7001 146 7001 149 7010 146 7019 46 7019" class="regexp"/> + <text class="regexp" x="54" y="7013">[#xFBD3-#xFD3D]</text> + <polygon points="43 7038 46 7029 142 7029 145 7038 142 7047 46 7047" class="regexp"/> + <text class="regexp" x="54" y="7041">[#xFD50-#xFD8F]</text> + <polygon points="43 7066 46 7057 144 7057 147 7066 144 7075 46 7075" class="regexp"/> + <text class="regexp" x="54" y="7069">[#xFD92-#xFDC7]</text> + <polygon points="43 7094 46 7085 142 7085 145 7094 142 7103 46 7103" class="regexp"/> + <text class="regexp" x="54" y="7097">[#xFDF0-#xFDFB]</text> + <polygon points="43 7122 46 7113 142 7113 145 7122 142 7131 46 7131" class="regexp"/> + <text class="regexp" x="54" y="7125">[#xFE33-#xFE34]</text> + <polygon points="43 7150 46 7141 142 7141 145 7150 142 7159 46 7159" class="regexp"/> + <text class="regexp" x="54" y="7153">[#xFE4D-#xFE4F]</text> + <polygon points="43 7178 46 7169 102 7169 105 7178 102 7187 46 7187" class="regexp"/> + <text class="regexp" x="54" y="7181">[#xFE69]</text> + <polygon points="43 7206 46 7197 142 7197 145 7206 142 7215 46 7215" class="regexp"/> + <text class="regexp" x="54" y="7209">[#xFE70-#xFE72]</text> + <polygon points="43 7234 46 7225 102 7225 105 7234 102 7243 46 7243" class="regexp"/> + <text class="regexp" x="54" y="7237">[#xFE74]</text> + <polygon points="43 7262 46 7253 142 7253 145 7262 142 7271 46 7271" class="regexp"/> + <text class="regexp" x="54" y="7265">[#xFE76-#xFEFC]</text> + <polygon points="43 7290 46 7281 102 7281 105 7290 102 7299 46 7299" class="regexp"/> + <text class="regexp" x="54" y="7293">[#xFF04]</text> + <polygon points="43 7318 46 7309 140 7309 143 7318 140 7327 46 7327" class="regexp"/> + <text class="regexp" x="54" y="7321">[#xFF21-#xFF3A]</text> + <polygon points="43 7346 46 7337 100 7337 103 7346 100 7355 46 7355" class="regexp"/> + <text class="regexp" x="54" y="7349">[#xFF3F]</text> + <polygon points="43 7374 46 7365 140 7365 143 7374 140 7383 46 7383" class="regexp"/> + <text class="regexp" x="54" y="7377">[#xFF41-#xFF5A]</text> + <polygon points="43 7402 46 7393 140 7393 143 7402 140 7411 46 7411" class="regexp"/> + <text class="regexp" x="54" y="7405">[#xFF65-#xFFBE]</text> + <polygon points="43 7430 46 7421 142 7421 145 7430 142 7439 46 7439" class="regexp"/> + <text class="regexp" x="54" y="7433">[#xFFC2-#xFFC7]</text> + <polygon points="43 7458 46 7449 140 7449 143 7458 140 7467 46 7467" class="regexp"/> + <text class="regexp" x="54" y="7461">[#xFFCA-#xFFCF]</text> + <polygon points="43 7486 46 7477 142 7477 145 7486 142 7495 46 7495" class="regexp"/> + <text class="regexp" x="54" y="7489">[#xFFD2-#xFFD7]</text> + <polygon points="43 7514 46 7505 144 7505 147 7514 144 7523 46 7523" class="regexp"/> + <text class="regexp" x="54" y="7517">[#xFFDA-#xFFDC]</text> + <polygon points="43 7542 46 7533 140 7533 143 7542 140 7551 46 7551" class="regexp"/> + <text class="regexp" x="54" y="7545">[#xFFE0-#xFFE1]</text> + <polygon points="43 7570 46 7561 140 7561 143 7570 140 7579 46 7579" class="regexp"/> + <text class="regexp" x="54" y="7573">[#xFFE5-#xFFE6]</text> + <path class="line" d="m17 10 h2 m20 0 h4 m14 0 h4 m0 0 h92 m-134 0 h20 m114 0 h20 m-154 0 q10 0 10 10 m134 0 q0 -10 10 -10 m-144 10 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m42 0 h4 m0 0 h64 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m14 0 h4 m0 0 h92 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m40 0 h4 m0 0 h66 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m80 0 h4 m0 0 h26 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m82 0 h4 m0 0 h24 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m80 0 h4 m0 0 h26 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m84 0 h4 m0 0 h22 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m23 -7560 h-3"/> + <polygon points="183 10 191 6 191 14"/> + <polygon points="183 10 175 6 175 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#letter" title="LETTER" shape="rect">LETTER</a>   ::= [$A-Z_a-z#x23#xA2-#xA5#xAA#xB5#xBA#xC0-#xD6#xD8-#xF6#xF8-#x21F#x222-#x233#x250-#x2AD#x2B0-#x2B8#x2BB-#x2C1#x2D0-#x2D1#x2E0-#x2E4#x2EE#x37A#x386#x388-#x38A#x38C#x38E-#x3A1#x3A3-#x3CE#x3D0-#x3D7#x3DA-#x3F3#x400-#x481#x48C-#x4C4#x4C7-#x4C8#x4CB-#x4CC#x4D0-#x4F5#x4F8-#x4F9#x531-#x556#x559#x561-#x587#x5D0-#x5EA#x5F0-#x5F2#x621-#x63A#x640-#x64A#x671-#x6D3#x6D5#x6E5-#x6E6#x6FA-#x6FC#x710#x712-#x72C#x780-#x7A5#x905-#x939#x93D#x950#x958-#x961#x985-#x98C#x98F-#x990#x993-#x9A8#x9AA-#x9B0#x9B2#x9B6-#x9B9#x9DC-#x9DD#x9DF-#x9E1#x9F0-#x9F3#xA05-#xA0A#xA0F-#xA10#xA13-#xA28#xA2A-#xA30#xA32-#xA33#xA35-#xA36#xA38-#xA39#xA59-#xA5C#xA5E#xA72-#xA74#xA85-#xA8B#xA8D#xA8F-#xA91#xA93-#xAA8#xAAA-#xAB0#xAB2-#xAB3#xAB5-#xAB9#xABD#xAD0#xAE0#xB05-#xB0C#xB0F-#xB10#xB13-#xB28#xB2A-#xB30#xB32-#xB33#xB36-#xB39#xB3D#xB5C-#xB5D#xB5F-#xB61#xB85-#xB8A#xB8E-#xB90#xB92-#xB95#xB99-#xB9A#xB9C#xB9E-#xB9F#xBA3-#xBA4#xBA8-#xBAA#xBAE-#xBB5#xBB7-#xBB9#xC05-#xC0C#xC0E-#xC10#xC12-#xC28#xC2A-#xC33#xC35-#xC39#xC60-#xC61#xC85-#xC8C#xC8E-#xC90#xC92-#xCA8#xCAA-#xCB3#xCB5-#xCB9#xCDE#xCE0-#xCE1#xD05-#xD0C#xD0E-#xD10#xD12-#xD28#xD2A-#xD39#xD60-#xD61#xD85-#xD96#xD9A-#xDB1#xDB3-#xDBB#xDBD#xDC0-#xDC6#xE01-#xE30#xE32-#xE33#xE3F-#xE46#xE81-#xE82#xE84#xE87-#xE88#xE8A#xE8D#xE94-#xE97#xE99-#xE9F#xEA1-#xEA3#xEA5#xEA7#xEAA-#xEAB#xEAD-#xEB0#xEB2-#xEB3#xEBD#xEC0-#xEC4#xEC6#xEDC-#xEDD#xF00#xF40-#xF47#xF49-#xF6A#xF88-#xF8B#x1000-#x1021#x1023-#x1027#x1029-#x102A#x1050-#x1055#x10A0-#x10C5#x10D0-#x10F6#x1100-#x1159#x115F-#x11A2#x11A8-#x11F9#x1200-#x1206#x1208-#x1246#x1248#x124A-#x124D#x1250-#x1256#x1258#x125A-#x125D#x1260-#x1286#x1288#x128A-#x128D#x1290-#x12AE#x12B0#x12B2-#x12B5#x12B8-#x12BE#x12C0#x12C2-#x12C5#x12C8-#x12CE#x12D0-#x12D6#x12D8-#x12EE#x12F0-#x130E#x1310#x1312-#x1315#x1318-#x131E#x1320-#x1346#x1348-#x135A#x13A0-#x13F4#x1401-#x166C#x166F-#x1676#x1681-#x169A#x16A0-#x16EA#x1780-#x17B3#x17DB#x1820-#x1877#x1880-#x18A8#x1E00-#x1E9B#x1EA0-#x1EF9#x1F00-#x1F15#x1F18-#x1F1D#x1F20-#x1F45#x1F48-#x1F4D#x1F50-#x1F57#x1F59#x1F5B#x1F5D#x1F5F-#x1F7D#x1F80-#x1FB4#x1FB6-#x1FBC#x1FBE#x1FC2-#x1FC4#x1FC6-#x1FCC#x1FD0-#x1FD3#x1FD6-#x1FDB#x1FE0-#x1FEC#x1FF2-#x1FF4#x1FF6-#x1FFC#x203F-#x2040#x207F#x20A0-#x20AF#x2102#x2107#x210A-#x2113#x2115#x2119-#x211D#x2124#x2126#x2128#x212A-#x212D#x212F-#x2131#x2133-#x2139#x2160-#x2183#x3005-#x3007#x3021-#x3029#x3031-#x3035#x3038-#x303A#x3041-#x3094#x309D-#x309E#x30A1-#x30FE#x3105-#x312C#x3131-#x318E#x31A0-#x31B7#x3400-#x4DB5#x4E00-#x9FA5#xA000-#xA48C#xAC00-#xD7A3#xF900-#xFA2D#xFB00-#xFB06#xFB13-#xFB17#xFB1D#xFB1F-#xFB28#xFB2A-#xFB36#xFB38-#xFB3C#xFB3E#xFB40-#xFB41#xFB43-#xFB44#xFB46-#xFBB1#xFBD3-#xFD3D#xFD50-#xFD8F#xFD92-#xFDC7#xFDF0-#xFDFB#xFE33-#xFE34#xFE4D-#xFE4F#xFE69#xFE70-#xFE72#xFE74#xFE76-#xFEFC#xFF04#xFF21-#xFF3A#xFF3F#xFF41-#xFF5A#xFF65-#xFFBE#xFFC2-#xFFC7#xFFCA-#xFFCF#xFFD2-#xFFD7#xFFDA-#xFFDC#xFFE0-#xFFE1#xFFE5-#xFFE6]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#s-identifier" title="s-identifier">s-identifier</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + PART_LETTER +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="193" height="10213"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="43" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="13">$</text> + <rect x="43" y="29" width="16" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="41">@</text> + <polygon points="43 66 46 57 82 57 85 66 82 75 46 75" class="regexp"/> + <text class="regexp" x="54" y="69">[0-9]</text> + <polygon points="43 94 46 85 82 85 85 94 82 103 46 103" class="regexp"/> + <text class="regexp" x="54" y="97">[A-Z]</text> + <rect x="43" y="113" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="125">_</text> + <polygon points="43 150 46 141 80 141 83 150 80 159 46 159" class="regexp"/> + <text class="regexp" x="54" y="153">[a-z]</text> + <polygon points="43 178 46 169 92 169 95 178 92 187 46 187" class="regexp"/> + <text class="regexp" x="54" y="181">[#x23]</text> + <polygon points="43 206 46 197 108 197 111 206 108 215 46 215" class="regexp"/> + <text class="regexp" x="54" y="209">[#x0-#x8]</text> + <polygon points="43 234 46 225 114 225 117 234 114 243 46 243" class="regexp"/> + <text class="regexp" x="54" y="237">[#xE-#x1B]</text> + <polygon points="43 262 46 253 118 253 121 262 118 271 46 271" class="regexp"/> + <text class="regexp" x="54" y="265">[#x7F-#x9F]</text> + <polygon points="43 290 46 281 120 281 123 290 120 299 46 299" class="regexp"/> + <text class="regexp" x="54" y="293">[#xA2-#xA5]</text> + <polygon points="43 318 46 309 92 309 95 318 92 327 46 327" class="regexp"/> + <text class="regexp" x="54" y="321">[#xAA]</text> + <polygon points="43 346 46 337 92 337 95 346 92 355 46 355" class="regexp"/> + <text class="regexp" x="54" y="349">[#xB5]</text> + <polygon points="43 374 46 365 92 365 95 374 92 383 46 383" class="regexp"/> + <text class="regexp" x="54" y="377">[#xBA]</text> + <polygon points="43 402 46 393 122 393 125 402 122 411 46 411" class="regexp"/> + <text class="regexp" x="54" y="405">[#xC0-#xD6]</text> + <polygon points="43 430 46 421 120 421 123 430 120 439 46 439" class="regexp"/> + <text class="regexp" x="54" y="433">[#xD8-#xF6]</text> + <polygon points="43 458 46 449 124 449 127 458 124 467 46 467" class="regexp"/> + <text class="regexp" x="54" y="461">[#xF8-#x21F]</text> + <polygon points="43 486 46 477 132 477 135 486 132 495 46 495" class="regexp"/> + <text class="regexp" x="54" y="489">[#x222-#x233]</text> + <polygon points="43 514 46 505 132 505 135 514 132 523 46 523" class="regexp"/> + <text class="regexp" x="54" y="517">[#x250-#x2AD]</text> + <polygon points="43 542 46 533 132 533 135 542 132 551 46 551" class="regexp"/> + <text class="regexp" x="54" y="545">[#x2B0-#x2B8]</text> + <polygon points="43 570 46 561 132 561 135 570 132 579 46 579" class="regexp"/> + <text class="regexp" x="54" y="573">[#x2BB-#x2C1]</text> + <polygon points="43 598 46 589 134 589 137 598 134 607 46 607" class="regexp"/> + <text class="regexp" x="54" y="601">[#x2D0-#x2D1]</text> + <polygon points="43 626 46 617 132 617 135 626 132 635 46 635" class="regexp"/> + <text class="regexp" x="54" y="629">[#x2E0-#x2E4]</text> + <polygon points="43 654 46 645 98 645 101 654 98 663 46 663" class="regexp"/> + <text class="regexp" x="54" y="657">[#x2EE]</text> + <polygon points="43 682 46 673 132 673 135 682 132 691 46 691" class="regexp"/> + <text class="regexp" x="54" y="685">[#x300-#x34E]</text> + <polygon points="43 710 46 701 132 701 135 710 132 719 46 719" class="regexp"/> + <text class="regexp" x="54" y="713">[#x360-#x362]</text> + <polygon points="43 738 46 729 98 729 101 738 98 747 46 747" class="regexp"/> + <text class="regexp" x="54" y="741">[#x37A]</text> + <polygon points="43 766 46 757 98 757 101 766 98 775 46 775" class="regexp"/> + <text class="regexp" x="54" y="769">[#x386]</text> + <polygon points="43 794 46 785 132 785 135 794 132 803 46 803" class="regexp"/> + <text class="regexp" x="54" y="797">[#x388-#x38A]</text> + <polygon points="43 822 46 813 98 813 101 822 98 831 46 831" class="regexp"/> + <text class="regexp" x="54" y="825">[#x38C]</text> + <polygon points="43 850 46 841 132 841 135 850 132 859 46 859" class="regexp"/> + <text class="regexp" x="54" y="853">[#x38E-#x3A1]</text> + <polygon points="43 878 46 869 132 869 135 878 132 887 46 887" class="regexp"/> + <text class="regexp" x="54" y="881">[#x3A3-#x3CE]</text> + <polygon points="43 906 46 897 134 897 137 906 134 915 46 915" class="regexp"/> + <text class="regexp" x="54" y="909">[#x3D0-#x3D7]</text> + <polygon points="43 934 46 925 132 925 135 934 132 943 46 943" class="regexp"/> + <text class="regexp" x="54" y="937">[#x3DA-#x3F3]</text> + <polygon points="43 962 46 953 132 953 135 962 132 971 46 971" class="regexp"/> + <text class="regexp" x="54" y="965">[#x400-#x481]</text> + <polygon points="43 990 46 981 132 981 135 990 132 999 46 999" class="regexp"/> + <text class="regexp" x="54" y="993">[#x483-#x486]</text> + <polygon points="43 1018 46 1009 134 1009 137 1018 134 1027 46 1027" class="regexp"/> + <text class="regexp" x="54" y="1021">[#x48C-#x4C4]</text> + <polygon points="43 1046 46 1037 134 1037 137 1046 134 1055 46 1055" class="regexp"/> + <text class="regexp" x="54" y="1049">[#x4C7-#x4C8]</text> + <polygon points="43 1074 46 1065 134 1065 137 1074 134 1083 46 1083" class="regexp"/> + <text class="regexp" x="54" y="1077">[#x4CB-#x4CC]</text> + <polygon points="43 1102 46 1093 132 1093 135 1102 132 1111 46 1111" class="regexp"/> + <text class="regexp" x="54" y="1105">[#x4D0-#x4F5]</text> + <polygon points="43 1130 46 1121 130 1121 133 1130 130 1139 46 1139" class="regexp"/> + <text class="regexp" x="54" y="1133">[#x4F8-#x4F9]</text> + <polygon points="43 1158 46 1149 132 1149 135 1158 132 1167 46 1167" class="regexp"/> + <text class="regexp" x="54" y="1161">[#x531-#x556]</text> + <polygon points="43 1186 46 1177 98 1177 101 1186 98 1195 46 1195" class="regexp"/> + <text class="regexp" x="54" y="1189">[#x559]</text> + <polygon points="43 1214 46 1205 132 1205 135 1214 132 1223 46 1223" class="regexp"/> + <text class="regexp" x="54" y="1217">[#x561-#x587]</text> + <polygon points="43 1242 46 1233 132 1233 135 1242 132 1251 46 1251" class="regexp"/> + <text class="regexp" x="54" y="1245">[#x591-#x5A1]</text> + <polygon points="43 1270 46 1261 132 1261 135 1270 132 1279 46 1279" class="regexp"/> + <text class="regexp" x="54" y="1273">[#x5A3-#x5B9]</text> + <polygon points="43 1298 46 1289 134 1289 137 1298 134 1307 46 1307" class="regexp"/> + <text class="regexp" x="54" y="1301">[#x5BB-#x5BD]</text> + <polygon points="43 1326 46 1317 96 1317 99 1326 96 1335 46 1335" class="regexp"/> + <text class="regexp" x="54" y="1329">[#x5BF]</text> + <polygon points="43 1354 46 1345 134 1345 137 1354 134 1363 46 1363" class="regexp"/> + <text class="regexp" x="54" y="1357">[#x5C1-#x5C2]</text> + <polygon points="43 1382 46 1373 98 1373 101 1382 98 1391 46 1391" class="regexp"/> + <text class="regexp" x="54" y="1385">[#x5C4]</text> + <polygon points="43 1410 46 1401 132 1401 135 1410 132 1419 46 1419" class="regexp"/> + <text class="regexp" x="54" y="1413">[#x5D0-#x5EA]</text> + <polygon points="43 1438 46 1429 130 1429 133 1438 130 1447 46 1447" class="regexp"/> + <text class="regexp" x="54" y="1441">[#x5F0-#x5F2]</text> + <polygon points="43 1466 46 1457 132 1457 135 1466 132 1475 46 1475" class="regexp"/> + <text class="regexp" x="54" y="1469">[#x621-#x63A]</text> + <polygon points="43 1494 46 1485 132 1485 135 1494 132 1503 46 1503" class="regexp"/> + <text class="regexp" x="54" y="1497">[#x640-#x655]</text> + <polygon points="43 1522 46 1513 132 1513 135 1522 132 1531 46 1531" class="regexp"/> + <text class="regexp" x="54" y="1525">[#x660-#x669]</text> + <polygon points="43 1550 46 1541 132 1541 135 1550 132 1559 46 1559" class="regexp"/> + <text class="regexp" x="54" y="1553">[#x670-#x6D3]</text> + <polygon points="43 1578 46 1569 134 1569 137 1578 134 1587 46 1587" class="regexp"/> + <text class="regexp" x="54" y="1581">[#x6D5-#x6DC]</text> + <polygon points="43 1606 46 1597 132 1597 135 1606 132 1615 46 1615" class="regexp"/> + <text class="regexp" x="54" y="1609">[#x6DF-#x6E8]</text> + <polygon points="43 1634 46 1625 132 1625 135 1634 132 1643 46 1643" class="regexp"/> + <text class="regexp" x="54" y="1637">[#x6EA-#x6ED]</text> + <polygon points="43 1662 46 1653 130 1653 133 1662 130 1671 46 1671" class="regexp"/> + <text class="regexp" x="54" y="1665">[#x6F0-#x6FC]</text> + <polygon points="43 1690 46 1681 132 1681 135 1690 132 1699 46 1699" class="regexp"/> + <text class="regexp" x="54" y="1693">[#x70F-#x72C]</text> + <polygon points="43 1718 46 1709 132 1709 135 1718 132 1727 46 1727" class="regexp"/> + <text class="regexp" x="54" y="1721">[#x730-#x74A]</text> + <polygon points="43 1746 46 1737 132 1737 135 1746 132 1755 46 1755" class="regexp"/> + <text class="regexp" x="54" y="1749">[#x780-#x7B0]</text> + <polygon points="43 1774 46 1765 132 1765 135 1774 132 1783 46 1783" class="regexp"/> + <text class="regexp" x="54" y="1777">[#x901-#x903]</text> + <polygon points="43 1802 46 1793 132 1793 135 1802 132 1811 46 1811" class="regexp"/> + <text class="regexp" x="54" y="1805">[#x905-#x939]</text> + <polygon points="43 1830 46 1821 134 1821 137 1830 134 1839 46 1839" class="regexp"/> + <text class="regexp" x="54" y="1833">[#x93C-#x94D]</text> + <polygon points="43 1858 46 1849 132 1849 135 1858 132 1867 46 1867" class="regexp"/> + <text class="regexp" x="54" y="1861">[#x950-#x954]</text> + <polygon points="43 1886 46 1877 132 1877 135 1886 132 1895 46 1895" class="regexp"/> + <text class="regexp" x="54" y="1889">[#x958-#x963]</text> + <polygon points="43 1914 46 1905 130 1905 133 1914 130 1923 46 1923" class="regexp"/> + <text class="regexp" x="54" y="1917">[#x966-#x96F]</text> + <polygon points="43 1942 46 1933 132 1933 135 1942 132 1951 46 1951" class="regexp"/> + <text class="regexp" x="54" y="1945">[#x981-#x983]</text> + <polygon points="43 1970 46 1961 132 1961 135 1970 132 1979 46 1979" class="regexp"/> + <text class="regexp" x="54" y="1973">[#x985-#x98C]</text> + <polygon points="43 1998 46 1989 130 1989 133 1998 130 2007 46 2007" class="regexp"/> + <text class="regexp" x="54" y="2001">[#x98F-#x990]</text> + <polygon points="43 2026 46 2017 132 2017 135 2026 132 2035 46 2035" class="regexp"/> + <text class="regexp" x="54" y="2029">[#x993-#x9A8]</text> + <polygon points="43 2054 46 2045 132 2045 135 2054 132 2063 46 2063" class="regexp"/> + <text class="regexp" x="54" y="2057">[#x9AA-#x9B0]</text> + <polygon points="43 2082 46 2073 98 2073 101 2082 98 2091 46 2091" class="regexp"/> + <text class="regexp" x="54" y="2085">[#x9B2]</text> + <polygon points="43 2110 46 2101 132 2101 135 2110 132 2119 46 2119" class="regexp"/> + <text class="regexp" x="54" y="2113">[#x9B6-#x9B9]</text> + <polygon points="43 2138 46 2129 98 2129 101 2138 98 2147 46 2147" class="regexp"/> + <text class="regexp" x="54" y="2141">[#x9BC]</text> + <polygon points="43 2166 46 2157 132 2157 135 2166 132 2175 46 2175" class="regexp"/> + <text class="regexp" x="54" y="2169">[#x9BE-#x9C4]</text> + <polygon points="43 2194 46 2185 134 2185 137 2194 134 2203 46 2203" class="regexp"/> + <text class="regexp" x="54" y="2197">[#x9C7-#x9C8]</text> + <polygon points="43 2222 46 2213 134 2213 137 2222 134 2231 46 2231" class="regexp"/> + <text class="regexp" x="54" y="2225">[#x9CB-#x9CD]</text> + <polygon points="43 2250 46 2241 98 2241 101 2250 98 2259 46 2259" class="regexp"/> + <text class="regexp" x="54" y="2253">[#x9D7]</text> + <polygon points="43 2278 46 2269 136 2269 139 2278 136 2287 46 2287" class="regexp"/> + <text class="regexp" x="54" y="2281">[#x9DC-#x9DD]</text> + <polygon points="43 2306 46 2297 132 2297 135 2306 132 2315 46 2315" class="regexp"/> + <text class="regexp" x="54" y="2309">[#x9DF-#x9E3]</text> + <polygon points="43 2334 46 2325 130 2325 133 2334 130 2343 46 2343" class="regexp"/> + <text class="regexp" x="54" y="2337">[#x9E6-#x9F3]</text> + <polygon points="43 2362 46 2353 98 2353 101 2362 98 2371 46 2371" class="regexp"/> + <text class="regexp" x="54" y="2365">[#xA02]</text> + <polygon points="43 2390 46 2381 132 2381 135 2390 132 2399 46 2399" class="regexp"/> + <text class="regexp" x="54" y="2393">[#xA05-#xA0A]</text> + <polygon points="43 2418 46 2409 130 2409 133 2418 130 2427 46 2427" class="regexp"/> + <text class="regexp" x="54" y="2421">[#xA0F-#xA10]</text> + <polygon points="43 2446 46 2437 132 2437 135 2446 132 2455 46 2455" class="regexp"/> + <text class="regexp" x="54" y="2449">[#xA13-#xA28]</text> + <polygon points="43 2474 46 2465 132 2465 135 2474 132 2483 46 2483" class="regexp"/> + <text class="regexp" x="54" y="2477">[#xA2A-#xA30]</text> + <polygon points="43 2502 46 2493 132 2493 135 2502 132 2511 46 2511" class="regexp"/> + <text class="regexp" x="54" y="2505">[#xA32-#xA33]</text> + <polygon points="43 2530 46 2521 132 2521 135 2530 132 2539 46 2539" class="regexp"/> + <text class="regexp" x="54" y="2533">[#xA35-#xA36]</text> + <polygon points="43 2558 46 2549 132 2549 135 2558 132 2567 46 2567" class="regexp"/> + <text class="regexp" x="54" y="2561">[#xA38-#xA39]</text> + <polygon points="43 2586 46 2577 98 2577 101 2586 98 2595 46 2595" class="regexp"/> + <text class="regexp" x="54" y="2589">[#xA3C]</text> + <polygon points="43 2614 46 2605 132 2605 135 2614 132 2623 46 2623" class="regexp"/> + <text class="regexp" x="54" y="2617">[#xA3E-#xA42]</text> + <polygon points="43 2642 46 2633 132 2633 135 2642 132 2651 46 2651" class="regexp"/> + <text class="regexp" x="54" y="2645">[#xA47-#xA48]</text> + <polygon points="43 2670 46 2661 134 2661 137 2670 134 2679 46 2679" class="regexp"/> + <text class="regexp" x="54" y="2673">[#xA4B-#xA4D]</text> + <polygon points="43 2698 46 2689 132 2689 135 2698 132 2707 46 2707" class="regexp"/> + <text class="regexp" x="54" y="2701">[#xA59-#xA5C]</text> + <polygon points="43 2726 46 2717 98 2717 101 2726 98 2735 46 2735" class="regexp"/> + <text class="regexp" x="54" y="2729">[#xA5E]</text> + <polygon points="43 2754 46 2745 132 2745 135 2754 132 2763 46 2763" class="regexp"/> + <text class="regexp" x="54" y="2757">[#xA66-#xA74]</text> + <polygon points="43 2782 46 2773 132 2773 135 2782 132 2791 46 2791" class="regexp"/> + <text class="regexp" x="54" y="2785">[#xA81-#xA83]</text> + <polygon points="43 2810 46 2801 132 2801 135 2810 132 2819 46 2819" class="regexp"/> + <text class="regexp" x="54" y="2813">[#xA85-#xA8B]</text> + <polygon points="43 2838 46 2829 98 2829 101 2838 98 2847 46 2847" class="regexp"/> + <text class="regexp" x="54" y="2841">[#xA8D]</text> + <polygon points="43 2866 46 2857 130 2857 133 2866 130 2875 46 2875" class="regexp"/> + <text class="regexp" x="54" y="2869">[#xA8F-#xA91]</text> + <polygon points="43 2894 46 2885 132 2885 135 2894 132 2903 46 2903" class="regexp"/> + <text class="regexp" x="54" y="2897">[#xA93-#xAA8]</text> + <polygon points="43 2922 46 2913 132 2913 135 2922 132 2931 46 2931" class="regexp"/> + <text class="regexp" x="54" y="2925">[#xAAA-#xAB0]</text> + <polygon points="43 2950 46 2941 132 2941 135 2950 132 2959 46 2959" class="regexp"/> + <text class="regexp" x="54" y="2953">[#xAB2-#xAB3]</text> + <polygon points="43 2978 46 2969 132 2969 135 2978 132 2987 46 2987" class="regexp"/> + <text class="regexp" x="54" y="2981">[#xAB5-#xAB9]</text> + <polygon points="43 3006 46 2997 134 2997 137 3006 134 3015 46 3015" class="regexp"/> + <text class="regexp" x="54" y="3009">[#xABC-#xAC5]</text> + <polygon points="43 3034 46 3025 134 3025 137 3034 134 3043 46 3043" class="regexp"/> + <text class="regexp" x="54" y="3037">[#xAC7-#xAC9]</text> + <polygon points="43 3062 46 3053 136 3053 139 3062 136 3071 46 3071" class="regexp"/> + <text class="regexp" x="54" y="3065">[#xACB-#xACD]</text> + <polygon points="43 3090 46 3081 98 3081 101 3090 98 3099 46 3099" class="regexp"/> + <text class="regexp" x="54" y="3093">[#xAD0]</text> + <polygon points="43 3118 46 3109 98 3109 101 3118 98 3127 46 3127" class="regexp"/> + <text class="regexp" x="54" y="3121">[#xAE0]</text> + <polygon points="43 3146 46 3137 130 3137 133 3146 130 3155 46 3155" class="regexp"/> + <text class="regexp" x="54" y="3149">[#xAE6-#xAEF]</text> + <polygon points="43 3174 46 3165 132 3165 135 3174 132 3183 46 3183" class="regexp"/> + <text class="regexp" x="54" y="3177">[#xB01-#xB03]</text> + <polygon points="43 3202 46 3193 132 3193 135 3202 132 3211 46 3211" class="regexp"/> + <text class="regexp" x="54" y="3205">[#xB05-#xB0C]</text> + <polygon points="43 3230 46 3221 130 3221 133 3230 130 3239 46 3239" class="regexp"/> + <text class="regexp" x="54" y="3233">[#xB0F-#xB10]</text> + <polygon points="43 3258 46 3249 132 3249 135 3258 132 3267 46 3267" class="regexp"/> + <text class="regexp" x="54" y="3261">[#xB13-#xB28]</text> + <polygon points="43 3286 46 3277 132 3277 135 3286 132 3295 46 3295" class="regexp"/> + <text class="regexp" x="54" y="3289">[#xB2A-#xB30]</text> + <polygon points="43 3314 46 3305 132 3305 135 3314 132 3323 46 3323" class="regexp"/> + <text class="regexp" x="54" y="3317">[#xB32-#xB33]</text> + <polygon points="43 3342 46 3333 132 3333 135 3342 132 3351 46 3351" class="regexp"/> + <text class="regexp" x="54" y="3345">[#xB36-#xB39]</text> + <polygon points="43 3370 46 3361 132 3361 135 3370 132 3379 46 3379" class="regexp"/> + <text class="regexp" x="54" y="3373">[#xB3C-#xB43]</text> + <polygon points="43 3398 46 3389 132 3389 135 3398 132 3407 46 3407" class="regexp"/> + <text class="regexp" x="54" y="3401">[#xB47-#xB48]</text> + <polygon points="43 3426 46 3417 134 3417 137 3426 134 3435 46 3435" class="regexp"/> + <text class="regexp" x="54" y="3429">[#xB4B-#xB4D]</text> + <polygon points="43 3454 46 3445 132 3445 135 3454 132 3463 46 3463" class="regexp"/> + <text class="regexp" x="54" y="3457">[#xB56-#xB57]</text> + <polygon points="43 3482 46 3473 134 3473 137 3482 134 3491 46 3491" class="regexp"/> + <text class="regexp" x="54" y="3485">[#xB5C-#xB5D]</text> + <polygon points="43 3510 46 3501 130 3501 133 3510 130 3519 46 3519" class="regexp"/> + <text class="regexp" x="54" y="3513">[#xB5F-#xB61]</text> + <polygon points="43 3538 46 3529 130 3529 133 3538 130 3547 46 3547" class="regexp"/> + <text class="regexp" x="54" y="3541">[#xB66-#xB6F]</text> + <polygon points="43 3566 46 3557 132 3557 135 3566 132 3575 46 3575" class="regexp"/> + <text class="regexp" x="54" y="3569">[#xB82-#xB83]</text> + <polygon points="43 3594 46 3585 132 3585 135 3594 132 3603 46 3603" class="regexp"/> + <text class="regexp" x="54" y="3597">[#xB85-#xB8A]</text> + <polygon points="43 3622 46 3613 132 3613 135 3622 132 3631 46 3631" class="regexp"/> + <text class="regexp" x="54" y="3625">[#xB8E-#xB90]</text> + <polygon points="43 3650 46 3641 132 3641 135 3650 132 3659 46 3659" class="regexp"/> + <text class="regexp" x="54" y="3653">[#xB92-#xB95]</text> + <polygon points="43 3678 46 3669 132 3669 135 3678 132 3687 46 3687" class="regexp"/> + <text class="regexp" x="54" y="3681">[#xB99-#xB9A]</text> + <polygon points="43 3706 46 3697 98 3697 101 3706 98 3715 46 3715" class="regexp"/> + <text class="regexp" x="54" y="3709">[#xB9C]</text> + <polygon points="43 3734 46 3725 130 3725 133 3734 130 3743 46 3743" class="regexp"/> + <text class="regexp" x="54" y="3737">[#xB9E-#xB9F]</text> + <polygon points="43 3762 46 3753 132 3753 135 3762 132 3771 46 3771" class="regexp"/> + <text class="regexp" x="54" y="3765">[#xBA3-#xBA4]</text> + <polygon points="43 3790 46 3781 132 3781 135 3790 132 3799 46 3799" class="regexp"/> + <text class="regexp" x="54" y="3793">[#xBA8-#xBAA]</text> + <polygon points="43 3818 46 3809 132 3809 135 3818 132 3827 46 3827" class="regexp"/> + <text class="regexp" x="54" y="3821">[#xBAE-#xBB5]</text> + <polygon points="43 3846 46 3837 132 3837 135 3846 132 3855 46 3855" class="regexp"/> + <text class="regexp" x="54" y="3849">[#xBB7-#xBB9]</text> + <polygon points="43 3874 46 3865 134 3865 137 3874 134 3883 46 3883" class="regexp"/> + <text class="regexp" x="54" y="3877">[#xBBE-#xBC2]</text> + <polygon points="43 3902 46 3893 134 3893 137 3902 134 3911 46 3911" class="regexp"/> + <text class="regexp" x="54" y="3905">[#xBC6-#xBC8]</text> + <polygon points="43 3930 46 3921 136 3921 139 3930 136 3939 46 3939" class="regexp"/> + <text class="regexp" x="54" y="3933">[#xBCA-#xBCD]</text> + <polygon points="43 3958 46 3949 98 3949 101 3958 98 3967 46 3967" class="regexp"/> + <text class="regexp" x="54" y="3961">[#xBD7]</text> + <polygon points="43 3986 46 3977 130 3977 133 3986 130 3995 46 3995" class="regexp"/> + <text class="regexp" x="54" y="3989">[#xBE7-#xBEF]</text> + <polygon points="43 4014 46 4005 134 4005 137 4014 134 4023 46 4023" class="regexp"/> + <text class="regexp" x="54" y="4017">[#xC01-#xC03]</text> + <polygon points="43 4042 46 4033 134 4033 137 4042 134 4051 46 4051" class="regexp"/> + <text class="regexp" x="54" y="4045">[#xC05-#xC0C]</text> + <polygon points="43 4070 46 4061 134 4061 137 4070 134 4079 46 4079" class="regexp"/> + <text class="regexp" x="54" y="4073">[#xC0E-#xC10]</text> + <polygon points="43 4098 46 4089 134 4089 137 4098 134 4107 46 4107" class="regexp"/> + <text class="regexp" x="54" y="4101">[#xC12-#xC28]</text> + <polygon points="43 4126 46 4117 134 4117 137 4126 134 4135 46 4135" class="regexp"/> + <text class="regexp" x="54" y="4129">[#xC2A-#xC33]</text> + <polygon points="43 4154 46 4145 134 4145 137 4154 134 4163 46 4163" class="regexp"/> + <text class="regexp" x="54" y="4157">[#xC35-#xC39]</text> + <polygon points="43 4182 46 4173 134 4173 137 4182 134 4191 46 4191" class="regexp"/> + <text class="regexp" x="54" y="4185">[#xC3E-#xC44]</text> + <polygon points="43 4210 46 4201 134 4201 137 4210 134 4219 46 4219" class="regexp"/> + <text class="regexp" x="54" y="4213">[#xC46-#xC48]</text> + <polygon points="43 4238 46 4229 134 4229 137 4238 134 4247 46 4247" class="regexp"/> + <text class="regexp" x="54" y="4241">[#xC4A-#xC4D]</text> + <polygon points="43 4266 46 4257 134 4257 137 4266 134 4275 46 4275" class="regexp"/> + <text class="regexp" x="54" y="4269">[#xC55-#xC56]</text> + <polygon points="43 4294 46 4285 134 4285 137 4294 134 4303 46 4303" class="regexp"/> + <text class="regexp" x="54" y="4297">[#xC60-#xC61]</text> + <polygon points="43 4322 46 4313 132 4313 135 4322 132 4331 46 4331" class="regexp"/> + <text class="regexp" x="54" y="4325">[#xC66-#xC6F]</text> + <polygon points="43 4350 46 4341 134 4341 137 4350 134 4359 46 4359" class="regexp"/> + <text class="regexp" x="54" y="4353">[#xC82-#xC83]</text> + <polygon points="43 4378 46 4369 134 4369 137 4378 134 4387 46 4387" class="regexp"/> + <text class="regexp" x="54" y="4381">[#xC85-#xC8C]</text> + <polygon points="43 4406 46 4397 134 4397 137 4406 134 4415 46 4415" class="regexp"/> + <text class="regexp" x="54" y="4409">[#xC8E-#xC90]</text> + <polygon points="43 4434 46 4425 134 4425 137 4434 134 4443 46 4443" class="regexp"/> + <text class="regexp" x="54" y="4437">[#xC92-#xCA8]</text> + <polygon points="43 4462 46 4453 134 4453 137 4462 134 4471 46 4471" class="regexp"/> + <text class="regexp" x="54" y="4465">[#xCAA-#xCB3]</text> + <polygon points="43 4490 46 4481 134 4481 137 4490 134 4499 46 4499" class="regexp"/> + <text class="regexp" x="54" y="4493">[#xCB5-#xCB9]</text> + <polygon points="43 4518 46 4509 134 4509 137 4518 134 4527 46 4527" class="regexp"/> + <text class="regexp" x="54" y="4521">[#xCBE-#xCC4]</text> + <polygon points="43 4546 46 4537 136 4537 139 4546 136 4555 46 4555" class="regexp"/> + <text class="regexp" x="54" y="4549">[#xCC6-#xCC8]</text> + <polygon points="43 4574 46 4565 136 4565 139 4574 136 4583 46 4583" class="regexp"/> + <text class="regexp" x="54" y="4577">[#xCCA-#xCCD]</text> + <polygon points="43 4602 46 4593 136 4593 139 4602 136 4611 46 4611" class="regexp"/> + <text class="regexp" x="54" y="4605">[#xCD5-#xCD6]</text> + <polygon points="43 4630 46 4621 100 4621 103 4630 100 4639 46 4639" class="regexp"/> + <text class="regexp" x="54" y="4633">[#xCDE]</text> + <polygon points="43 4658 46 4649 134 4649 137 4658 134 4667 46 4667" class="regexp"/> + <text class="regexp" x="54" y="4661">[#xCE0-#xCE1]</text> + <polygon points="43 4686 46 4677 132 4677 135 4686 132 4695 46 4695" class="regexp"/> + <text class="regexp" x="54" y="4689">[#xCE6-#xCEF]</text> + <polygon points="43 4714 46 4705 134 4705 137 4714 134 4723 46 4723" class="regexp"/> + <text class="regexp" x="54" y="4717">[#xD02-#xD03]</text> + <polygon points="43 4742 46 4733 134 4733 137 4742 134 4751 46 4751" class="regexp"/> + <text class="regexp" x="54" y="4745">[#xD05-#xD0C]</text> + <polygon points="43 4770 46 4761 134 4761 137 4770 134 4779 46 4779" class="regexp"/> + <text class="regexp" x="54" y="4773">[#xD0E-#xD10]</text> + <polygon points="43 4798 46 4789 134 4789 137 4798 134 4807 46 4807" class="regexp"/> + <text class="regexp" x="54" y="4801">[#xD12-#xD28]</text> + <polygon points="43 4826 46 4817 134 4817 137 4826 134 4835 46 4835" class="regexp"/> + <text class="regexp" x="54" y="4829">[#xD2A-#xD39]</text> + <polygon points="43 4854 46 4845 134 4845 137 4854 134 4863 46 4863" class="regexp"/> + <text class="regexp" x="54" y="4857">[#xD3E-#xD43]</text> + <polygon points="43 4882 46 4873 134 4873 137 4882 134 4891 46 4891" class="regexp"/> + <text class="regexp" x="54" y="4885">[#xD46-#xD48]</text> + <polygon points="43 4910 46 4901 136 4901 139 4910 136 4919 46 4919" class="regexp"/> + <text class="regexp" x="54" y="4913">[#xD4A-#xD4D]</text> + <polygon points="43 4938 46 4929 98 4929 101 4938 98 4947 46 4947" class="regexp"/> + <text class="regexp" x="54" y="4941">[#xD57]</text> + <polygon points="43 4966 46 4957 134 4957 137 4966 134 4975 46 4975" class="regexp"/> + <text class="regexp" x="54" y="4969">[#xD60-#xD61]</text> + <polygon points="43 4994 46 4985 132 4985 135 4994 132 5003 46 5003" class="regexp"/> + <text class="regexp" x="54" y="4997">[#xD66-#xD6F]</text> + <polygon points="43 5022 46 5013 134 5013 137 5022 134 5031 46 5031" class="regexp"/> + <text class="regexp" x="54" y="5025">[#xD82-#xD83]</text> + <polygon points="43 5050 46 5041 134 5041 137 5050 134 5059 46 5059" class="regexp"/> + <text class="regexp" x="54" y="5053">[#xD85-#xD96]</text> + <polygon points="43 5078 46 5069 134 5069 137 5078 134 5087 46 5087" class="regexp"/> + <text class="regexp" x="54" y="5081">[#xD9A-#xDB1]</text> + <polygon points="43 5106 46 5097 134 5097 137 5106 134 5115 46 5115" class="regexp"/> + <text class="regexp" x="54" y="5109">[#xDB3-#xDBB]</text> + <polygon points="43 5134 46 5125 100 5125 103 5134 100 5143 46 5143" class="regexp"/> + <text class="regexp" x="54" y="5137">[#xDBD]</text> + <polygon points="43 5162 46 5153 136 5153 139 5162 136 5171 46 5171" class="regexp"/> + <text class="regexp" x="54" y="5165">[#xDC0-#xDC6]</text> + <polygon points="43 5190 46 5181 100 5181 103 5190 100 5199 46 5199" class="regexp"/> + <text class="regexp" x="54" y="5193">[#xDCA]</text> + <polygon points="43 5218 46 5209 136 5209 139 5218 136 5227 46 5227" class="regexp"/> + <text class="regexp" x="54" y="5221">[#xDCF-#xDD4]</text> + <polygon points="43 5246 46 5237 100 5237 103 5246 100 5255 46 5255" class="regexp"/> + <text class="regexp" x="54" y="5249">[#xDD6]</text> + <polygon points="43 5274 46 5265 136 5265 139 5274 136 5283 46 5283" class="regexp"/> + <text class="regexp" x="54" y="5277">[#xDD8-#xDDF]</text> + <polygon points="43 5302 46 5293 132 5293 135 5302 132 5311 46 5311" class="regexp"/> + <text class="regexp" x="54" y="5305">[#xDF2-#xDF3]</text> + <polygon points="43 5330 46 5321 132 5321 135 5330 132 5339 46 5339" class="regexp"/> + <text class="regexp" x="54" y="5333">[#xE01-#xE3A]</text> + <polygon points="43 5358 46 5349 130 5349 133 5358 130 5367 46 5367" class="regexp"/> + <text class="regexp" x="54" y="5361">[#xE3F-#xE4E]</text> + <polygon points="43 5386 46 5377 132 5377 135 5386 132 5395 46 5395" class="regexp"/> + <text class="regexp" x="54" y="5389">[#xE50-#xE59]</text> + <polygon points="43 5414 46 5405 132 5405 135 5414 132 5423 46 5423" class="regexp"/> + <text class="regexp" x="54" y="5417">[#xE81-#xE82]</text> + <polygon points="43 5442 46 5433 98 5433 101 5442 98 5451 46 5451" class="regexp"/> + <text class="regexp" x="54" y="5445">[#xE84]</text> + <polygon points="43 5470 46 5461 132 5461 135 5470 132 5479 46 5479" class="regexp"/> + <text class="regexp" x="54" y="5473">[#xE87-#xE88]</text> + <polygon points="43 5498 46 5489 98 5489 101 5498 98 5507 46 5507" class="regexp"/> + <text class="regexp" x="54" y="5501">[#xE8A]</text> + <polygon points="43 5526 46 5517 98 5517 101 5526 98 5535 46 5535" class="regexp"/> + <text class="regexp" x="54" y="5529">[#xE8D]</text> + <polygon points="43 5554 46 5545 132 5545 135 5554 132 5563 46 5563" class="regexp"/> + <text class="regexp" x="54" y="5557">[#xE94-#xE97]</text> + <polygon points="43 5582 46 5573 130 5573 133 5582 130 5591 46 5591" class="regexp"/> + <text class="regexp" x="54" y="5585">[#xE99-#xE9F]</text> + <polygon points="43 5610 46 5601 132 5601 135 5610 132 5619 46 5619" class="regexp"/> + <text class="regexp" x="54" y="5613">[#xEA1-#xEA3]</text> + <polygon points="43 5638 46 5629 98 5629 101 5638 98 5647 46 5647" class="regexp"/> + <text class="regexp" x="54" y="5641">[#xEA5]</text> + <polygon points="43 5666 46 5657 98 5657 101 5666 98 5675 46 5675" class="regexp"/> + <text class="regexp" x="54" y="5669">[#xEA7]</text> + <polygon points="43 5694 46 5685 132 5685 135 5694 132 5703 46 5703" class="regexp"/> + <text class="regexp" x="54" y="5697">[#xEAA-#xEAB]</text> + <polygon points="43 5722 46 5713 134 5713 137 5722 134 5731 46 5731" class="regexp"/> + <text class="regexp" x="54" y="5725">[#xEAD-#xEB9]</text> + <polygon points="43 5750 46 5741 134 5741 137 5750 134 5759 46 5759" class="regexp"/> + <text class="regexp" x="54" y="5753">[#xEBB-#xEBD]</text> + <polygon points="43 5778 46 5769 134 5769 137 5778 134 5787 46 5787" class="regexp"/> + <text class="regexp" x="54" y="5781">[#xEC0-#xEC4]</text> + <polygon points="43 5806 46 5797 98 5797 101 5806 98 5815 46 5815" class="regexp"/> + <text class="regexp" x="54" y="5809">[#xEC6]</text> + <polygon points="43 5834 46 5825 134 5825 137 5834 134 5843 46 5843" class="regexp"/> + <text class="regexp" x="54" y="5837">[#xEC8-#xECD]</text> + <polygon points="43 5862 46 5853 134 5853 137 5862 134 5871 46 5871" class="regexp"/> + <text class="regexp" x="54" y="5865">[#xED0-#xED9]</text> + <polygon points="43 5890 46 5881 136 5881 139 5890 136 5899 46 5899" class="regexp"/> + <text class="regexp" x="54" y="5893">[#xEDC-#xEDD]</text> + <polygon points="43 5918 46 5909 96 5909 99 5918 96 5927 46 5927" class="regexp"/> + <text class="regexp" x="54" y="5921">[#xF00]</text> + <polygon points="43 5946 46 5937 130 5937 133 5946 130 5955 46 5955" class="regexp"/> + <text class="regexp" x="54" y="5949">[#xF18-#xF19]</text> + <polygon points="43 5974 46 5965 130 5965 133 5974 130 5983 46 5983" class="regexp"/> + <text class="regexp" x="54" y="5977">[#xF20-#xF29]</text> + <polygon points="43 6002 46 5993 96 5993 99 6002 96 6011 46 6011" class="regexp"/> + <text class="regexp" x="54" y="6005">[#xF35]</text> + <polygon points="43 6030 46 6021 96 6021 99 6030 96 6039 46 6039" class="regexp"/> + <text class="regexp" x="54" y="6033">[#xF37]</text> + <polygon points="43 6058 46 6049 96 6049 99 6058 96 6067 46 6067" class="regexp"/> + <text class="regexp" x="54" y="6061">[#xF39]</text> + <polygon points="43 6086 46 6077 130 6077 133 6086 130 6095 46 6095" class="regexp"/> + <text class="regexp" x="54" y="6089">[#xF3E-#xF47]</text> + <polygon points="43 6114 46 6105 130 6105 133 6114 130 6123 46 6123" class="regexp"/> + <text class="regexp" x="54" y="6117">[#xF49-#xF6A]</text> + <polygon points="43 6142 46 6133 130 6133 133 6142 130 6151 46 6151" class="regexp"/> + <text class="regexp" x="54" y="6145">[#xF71-#xF84]</text> + <polygon points="43 6170 46 6161 130 6161 133 6170 130 6179 46 6179" class="regexp"/> + <text class="regexp" x="54" y="6173">[#xF86-#xF8B]</text> + <polygon points="43 6198 46 6189 130 6189 133 6198 130 6207 46 6207" class="regexp"/> + <text class="regexp" x="54" y="6201">[#xF90-#xF97]</text> + <polygon points="43 6226 46 6217 130 6217 133 6226 130 6235 46 6235" class="regexp"/> + <text class="regexp" x="54" y="6229">[#xF99-#xFBC]</text> + <polygon points="43 6254 46 6245 98 6245 101 6254 98 6263 46 6263" class="regexp"/> + <text class="regexp" x="54" y="6257">[#xFC6]</text> + <polygon points="43 6282 46 6273 144 6273 147 6282 144 6291 46 6291" class="regexp"/> + <text class="regexp" x="54" y="6285">[#x1000-#x1021]</text> + <polygon points="43 6310 46 6301 144 6301 147 6310 144 6319 46 6319" class="regexp"/> + <text class="regexp" x="54" y="6313">[#x1023-#x1027]</text> + <polygon points="43 6338 46 6329 144 6329 147 6338 144 6347 46 6347" class="regexp"/> + <text class="regexp" x="54" y="6341">[#x1029-#x102A]</text> + <polygon points="43 6366 46 6357 144 6357 147 6366 144 6375 46 6375" class="regexp"/> + <text class="regexp" x="54" y="6369">[#x102C-#x1032]</text> + <polygon points="43 6394 46 6385 144 6385 147 6394 144 6403 46 6403" class="regexp"/> + <text class="regexp" x="54" y="6397">[#x1036-#x1039]</text> + <polygon points="43 6422 46 6413 144 6413 147 6422 144 6431 46 6431" class="regexp"/> + <text class="regexp" x="54" y="6425">[#x1040-#x1049]</text> + <polygon points="43 6450 46 6441 144 6441 147 6450 144 6459 46 6459" class="regexp"/> + <text class="regexp" x="54" y="6453">[#x1050-#x1059]</text> + <polygon points="43 6478 46 6469 144 6469 147 6478 144 6487 46 6487" class="regexp"/> + <text class="regexp" x="54" y="6481">[#x10A0-#x10C5]</text> + <polygon points="43 6506 46 6497 144 6497 147 6506 144 6515 46 6515" class="regexp"/> + <text class="regexp" x="54" y="6509">[#x10D0-#x10F6]</text> + <polygon points="43 6534 46 6525 144 6525 147 6534 144 6543 46 6543" class="regexp"/> + <text class="regexp" x="54" y="6537">[#x1100-#x1159]</text> + <polygon points="43 6562 46 6553 142 6553 145 6562 142 6571 46 6571" class="regexp"/> + <text class="regexp" x="54" y="6565">[#x115F-#x11A2]</text> + <polygon points="43 6590 46 6581 142 6581 145 6590 142 6599 46 6599" class="regexp"/> + <text class="regexp" x="54" y="6593">[#x11A8-#x11F9]</text> + <polygon points="43 6618 46 6609 144 6609 147 6618 144 6627 46 6627" class="regexp"/> + <text class="regexp" x="54" y="6621">[#x1200-#x1206]</text> + <polygon points="43 6646 46 6637 144 6637 147 6646 144 6655 46 6655" class="regexp"/> + <text class="regexp" x="54" y="6649">[#x1208-#x1246]</text> + <polygon points="43 6674 46 6665 104 6665 107 6674 104 6683 46 6683" class="regexp"/> + <text class="regexp" x="54" y="6677">[#x1248]</text> + <polygon points="43 6702 46 6693 144 6693 147 6702 144 6711 46 6711" class="regexp"/> + <text class="regexp" x="54" y="6705">[#x124A-#x124D]</text> + <polygon points="43 6730 46 6721 144 6721 147 6730 144 6739 46 6739" class="regexp"/> + <text class="regexp" x="54" y="6733">[#x1250-#x1256]</text> + <polygon points="43 6758 46 6749 104 6749 107 6758 104 6767 46 6767" class="regexp"/> + <text class="regexp" x="54" y="6761">[#x1258]</text> + <polygon points="43 6786 46 6777 144 6777 147 6786 144 6795 46 6795" class="regexp"/> + <text class="regexp" x="54" y="6789">[#x125A-#x125D]</text> + <polygon points="43 6814 46 6805 144 6805 147 6814 144 6823 46 6823" class="regexp"/> + <text class="regexp" x="54" y="6817">[#x1260-#x1286]</text> + <polygon points="43 6842 46 6833 104 6833 107 6842 104 6851 46 6851" class="regexp"/> + <text class="regexp" x="54" y="6845">[#x1288]</text> + <polygon points="43 6870 46 6861 144 6861 147 6870 144 6879 46 6879" class="regexp"/> + <text class="regexp" x="54" y="6873">[#x128A-#x128D]</text> + <polygon points="43 6898 46 6889 144 6889 147 6898 144 6907 46 6907" class="regexp"/> + <text class="regexp" x="54" y="6901">[#x1290-#x12AE]</text> + <polygon points="43 6926 46 6917 104 6917 107 6926 104 6935 46 6935" class="regexp"/> + <text class="regexp" x="54" y="6929">[#x12B0]</text> + <polygon points="43 6954 46 6945 144 6945 147 6954 144 6963 46 6963" class="regexp"/> + <text class="regexp" x="54" y="6957">[#x12B2-#x12B5]</text> + <polygon points="43 6982 46 6973 144 6973 147 6982 144 6991 46 6991" class="regexp"/> + <text class="regexp" x="54" y="6985">[#x12B8-#x12BE]</text> + <polygon points="43 7010 46 7001 104 7001 107 7010 104 7019 46 7019" class="regexp"/> + <text class="regexp" x="54" y="7013">[#x12C0]</text> + <polygon points="43 7038 46 7029 146 7029 149 7038 146 7047 46 7047" class="regexp"/> + <text class="regexp" x="54" y="7041">[#x12C2-#x12C5]</text> + <polygon points="43 7066 46 7057 146 7057 149 7066 146 7075 46 7075" class="regexp"/> + <text class="regexp" x="54" y="7069">[#x12C8-#x12CE]</text> + <polygon points="43 7094 46 7085 146 7085 149 7094 146 7103 46 7103" class="regexp"/> + <text class="regexp" x="54" y="7097">[#x12D0-#x12D6]</text> + <polygon points="43 7122 46 7113 144 7113 147 7122 144 7131 46 7131" class="regexp"/> + <text class="regexp" x="54" y="7125">[#x12D8-#x12EE]</text> + <polygon points="43 7150 46 7141 142 7141 145 7150 142 7159 46 7159" class="regexp"/> + <text class="regexp" x="54" y="7153">[#x12F0-#x130E]</text> + <polygon points="43 7178 46 7169 104 7169 107 7178 104 7187 46 7187" class="regexp"/> + <text class="regexp" x="54" y="7181">[#x1310]</text> + <polygon points="43 7206 46 7197 144 7197 147 7206 144 7215 46 7215" class="regexp"/> + <text class="regexp" x="54" y="7209">[#x1312-#x1315]</text> + <polygon points="43 7234 46 7225 144 7225 147 7234 144 7243 46 7243" class="regexp"/> + <text class="regexp" x="54" y="7237">[#x1318-#x131E]</text> + <polygon points="43 7262 46 7253 144 7253 147 7262 144 7271 46 7271" class="regexp"/> + <text class="regexp" x="54" y="7265">[#x1320-#x1346]</text> + <polygon points="43 7290 46 7281 144 7281 147 7290 144 7299 46 7299" class="regexp"/> + <text class="regexp" x="54" y="7293">[#x1348-#x135A]</text> + <polygon points="43 7318 46 7309 144 7309 147 7318 144 7327 46 7327" class="regexp"/> + <text class="regexp" x="54" y="7321">[#x1369-#x1371]</text> + <polygon points="43 7346 46 7337 142 7337 145 7346 142 7355 46 7355" class="regexp"/> + <text class="regexp" x="54" y="7349">[#x13A0-#x13F4]</text> + <polygon points="43 7374 46 7365 144 7365 147 7374 144 7383 46 7383" class="regexp"/> + <text class="regexp" x="54" y="7377">[#x1401-#x166C]</text> + <polygon points="43 7402 46 7393 142 7393 145 7402 142 7411 46 7411" class="regexp"/> + <text class="regexp" x="54" y="7405">[#x166F-#x1676]</text> + <polygon points="43 7430 46 7421 144 7421 147 7430 144 7439 46 7439" class="regexp"/> + <text class="regexp" x="54" y="7433">[#x1681-#x169A]</text> + <polygon points="43 7458 46 7449 144 7449 147 7458 144 7467 46 7467" class="regexp"/> + <text class="regexp" x="54" y="7461">[#x16A0-#x16EA]</text> + <polygon points="43 7486 46 7477 144 7477 147 7486 144 7495 46 7495" class="regexp"/> + <text class="regexp" x="54" y="7489">[#x1780-#x17D3]</text> + <polygon points="43 7514 46 7505 104 7505 107 7514 104 7523 46 7523" class="regexp"/> + <text class="regexp" x="54" y="7517">[#x17DB]</text> + <polygon points="43 7542 46 7533 144 7533 147 7542 144 7551 46 7551" class="regexp"/> + <text class="regexp" x="54" y="7545">[#x17E0-#x17E9]</text> + <polygon points="43 7570 46 7561 144 7561 147 7570 144 7579 46 7579" class="regexp"/> + <text class="regexp" x="54" y="7573">[#x180B-#x180E]</text> + <polygon points="43 7598 46 7589 144 7589 147 7598 144 7607 46 7607" class="regexp"/> + <text class="regexp" x="54" y="7601">[#x1810-#x1819]</text> + <polygon points="43 7626 46 7617 144 7617 147 7626 144 7635 46 7635" class="regexp"/> + <text class="regexp" x="54" y="7629">[#x1820-#x1877]</text> + <polygon points="43 7654 46 7645 144 7645 147 7654 144 7663 46 7663" class="regexp"/> + <text class="regexp" x="54" y="7657">[#x1880-#x18A9]</text> + <polygon points="43 7682 46 7673 144 7673 147 7682 144 7691 46 7691" class="regexp"/> + <text class="regexp" x="54" y="7685">[#x1E00-#x1E9B]</text> + <polygon points="43 7710 46 7701 142 7701 145 7710 142 7719 46 7719" class="regexp"/> + <text class="regexp" x="54" y="7713">[#x1EA0-#x1EF9]</text> + <polygon points="43 7738 46 7729 142 7729 145 7738 142 7747 46 7747" class="regexp"/> + <text class="regexp" x="54" y="7741">[#x1F00-#x1F15]</text> + <polygon points="43 7766 46 7757 142 7757 145 7766 142 7775 46 7775" class="regexp"/> + <text class="regexp" x="54" y="7769">[#x1F18-#x1F1D]</text> + <polygon points="43 7794 46 7785 142 7785 145 7794 142 7803 46 7803" class="regexp"/> + <text class="regexp" x="54" y="7797">[#x1F20-#x1F45]</text> + <polygon points="43 7822 46 7813 142 7813 145 7822 142 7831 46 7831" class="regexp"/> + <text class="regexp" x="54" y="7825">[#x1F48-#x1F4D]</text> + <polygon points="43 7850 46 7841 142 7841 145 7850 142 7859 46 7859" class="regexp"/> + <text class="regexp" x="54" y="7853">[#x1F50-#x1F57]</text> + <polygon points="43 7878 46 7869 102 7869 105 7878 102 7887 46 7887" class="regexp"/> + <text class="regexp" x="54" y="7881">[#x1F59]</text> + <polygon points="43 7906 46 7897 102 7897 105 7906 102 7915 46 7915" class="regexp"/> + <text class="regexp" x="54" y="7909">[#x1F5B]</text> + <polygon points="43 7934 46 7925 104 7925 107 7934 104 7943 46 7943" class="regexp"/> + <text class="regexp" x="54" y="7937">[#x1F5D]</text> + <polygon points="43 7962 46 7953 142 7953 145 7962 142 7971 46 7971" class="regexp"/> + <text class="regexp" x="54" y="7965">[#x1F5F-#x1F7D]</text> + <polygon points="43 7990 46 7981 142 7981 145 7990 142 7999 46 7999" class="regexp"/> + <text class="regexp" x="54" y="7993">[#x1F80-#x1FB4]</text> + <polygon points="43 8018 46 8009 142 8009 145 8018 142 8027 46 8027" class="regexp"/> + <text class="regexp" x="54" y="8021">[#x1FB6-#x1FBC]</text> + <polygon points="43 8046 46 8037 102 8037 105 8046 102 8055 46 8055" class="regexp"/> + <text class="regexp" x="54" y="8049">[#x1FBE]</text> + <polygon points="43 8074 46 8065 144 8065 147 8074 144 8083 46 8083" class="regexp"/> + <text class="regexp" x="54" y="8077">[#x1FC2-#x1FC4]</text> + <polygon points="43 8102 46 8093 144 8093 147 8102 144 8111 46 8111" class="regexp"/> + <text class="regexp" x="54" y="8105">[#x1FC6-#x1FCC]</text> + <polygon points="43 8130 46 8121 144 8121 147 8130 144 8139 46 8139" class="regexp"/> + <text class="regexp" x="54" y="8133">[#x1FD0-#x1FD3]</text> + <polygon points="43 8158 46 8149 144 8149 147 8158 144 8167 46 8167" class="regexp"/> + <text class="regexp" x="54" y="8161">[#x1FD6-#x1FDB]</text> + <polygon points="43 8186 46 8177 142 8177 145 8186 142 8195 46 8195" class="regexp"/> + <text class="regexp" x="54" y="8189">[#x1FE0-#x1FEC]</text> + <polygon points="43 8214 46 8205 140 8205 143 8214 140 8223 46 8223" class="regexp"/> + <text class="regexp" x="54" y="8217">[#x1FF2-#x1FF4]</text> + <polygon points="43 8242 46 8233 140 8233 143 8242 140 8251 46 8251" class="regexp"/> + <text class="regexp" x="54" y="8245">[#x1FF6-#x1FFC]</text> + <polygon points="43 8270 46 8261 144 8261 147 8270 144 8279 46 8279" class="regexp"/> + <text class="regexp" x="54" y="8273">[#x200C-#x200F]</text> + <polygon points="43 8298 46 8289 144 8289 147 8298 144 8307 46 8307" class="regexp"/> + <text class="regexp" x="54" y="8301">[#x202A-#x202E]</text> + <polygon points="43 8326 46 8317 142 8317 145 8326 142 8335 46 8335" class="regexp"/> + <text class="regexp" x="54" y="8329">[#x203F-#x2040]</text> + <polygon points="43 8354 46 8345 142 8345 145 8354 142 8363 46 8363" class="regexp"/> + <text class="regexp" x="54" y="8357">[#x206A-#x206F]</text> + <polygon points="43 8382 46 8373 102 8373 105 8382 102 8391 46 8391" class="regexp"/> + <text class="regexp" x="54" y="8385">[#x207F]</text> + <polygon points="43 8410 46 8401 142 8401 145 8410 142 8419 46 8419" class="regexp"/> + <text class="regexp" x="54" y="8413">[#x20A0-#x20AF]</text> + <polygon points="43 8438 46 8429 146 8429 149 8438 146 8447 46 8447" class="regexp"/> + <text class="regexp" x="54" y="8441">[#x20D0-#x20DC]</text> + <polygon points="43 8466 46 8457 104 8457 107 8466 104 8475 46 8475" class="regexp"/> + <text class="regexp" x="54" y="8469">[#x20E1]</text> + <polygon points="43 8494 46 8485 104 8485 107 8494 104 8503 46 8503" class="regexp"/> + <text class="regexp" x="54" y="8497">[#x2102]</text> + <polygon points="43 8522 46 8513 104 8513 107 8522 104 8531 46 8531" class="regexp"/> + <text class="regexp" x="54" y="8525">[#x2107]</text> + <polygon points="43 8550 46 8541 144 8541 147 8550 144 8559 46 8559" class="regexp"/> + <text class="regexp" x="54" y="8553">[#x210A-#x2113]</text> + <polygon points="43 8578 46 8569 104 8569 107 8578 104 8587 46 8587" class="regexp"/> + <text class="regexp" x="54" y="8581">[#x2115]</text> + <polygon points="43 8606 46 8597 144 8597 147 8606 144 8615 46 8615" class="regexp"/> + <text class="regexp" x="54" y="8609">[#x2119-#x211D]</text> + <polygon points="43 8634 46 8625 104 8625 107 8634 104 8643 46 8643" class="regexp"/> + <text class="regexp" x="54" y="8637">[#x2124]</text> + <polygon points="43 8662 46 8653 104 8653 107 8662 104 8671 46 8671" class="regexp"/> + <text class="regexp" x="54" y="8665">[#x2126]</text> + <polygon points="43 8690 46 8681 104 8681 107 8690 104 8699 46 8699" class="regexp"/> + <text class="regexp" x="54" y="8693">[#x2128]</text> + <polygon points="43 8718 46 8709 144 8709 147 8718 144 8727 46 8727" class="regexp"/> + <text class="regexp" x="54" y="8721">[#x212A-#x212D]</text> + <polygon points="43 8746 46 8737 142 8737 145 8746 142 8755 46 8755" class="regexp"/> + <text class="regexp" x="54" y="8749">[#x212F-#x2131]</text> + <polygon points="43 8774 46 8765 144 8765 147 8774 144 8783 46 8783" class="regexp"/> + <text class="regexp" x="54" y="8777">[#x2133-#x2139]</text> + <polygon points="43 8802 46 8793 144 8793 147 8802 144 8811 46 8811" class="regexp"/> + <text class="regexp" x="54" y="8805">[#x2160-#x2183]</text> + <polygon points="43 8830 46 8821 144 8821 147 8830 144 8839 46 8839" class="regexp"/> + <text class="regexp" x="54" y="8833">[#x3005-#x3007]</text> + <polygon points="43 8858 46 8849 142 8849 145 8858 142 8867 46 8867" class="regexp"/> + <text class="regexp" x="54" y="8861">[#x3021-#x302F]</text> + <polygon points="43 8886 46 8877 144 8877 147 8886 144 8895 46 8895" class="regexp"/> + <text class="regexp" x="54" y="8889">[#x3031-#x3035]</text> + <polygon points="43 8914 46 8905 144 8905 147 8914 144 8923 46 8923" class="regexp"/> + <text class="regexp" x="54" y="8917">[#x3038-#x303A]</text> + <polygon points="43 8942 46 8933 144 8933 147 8942 144 8951 46 8951" class="regexp"/> + <text class="regexp" x="54" y="8945">[#x3041-#x3094]</text> + <polygon points="43 8970 46 8961 144 8961 147 8970 144 8979 46 8979" class="regexp"/> + <text class="regexp" x="54" y="8973">[#x3099-#x309A]</text> + <polygon points="43 8998 46 8989 144 8989 147 8998 144 9007 46 9007" class="regexp"/> + <text class="regexp" x="54" y="9001">[#x309D-#x309E]</text> + <polygon points="43 9026 46 9017 142 9017 145 9026 142 9035 46 9035" class="regexp"/> + <text class="regexp" x="54" y="9029">[#x30A1-#x30FE]</text> + <polygon points="43 9054 46 9045 144 9045 147 9054 144 9063 46 9063" class="regexp"/> + <text class="regexp" x="54" y="9057">[#x3105-#x312C]</text> + <polygon points="43 9082 46 9073 144 9073 147 9082 144 9091 46 9091" class="regexp"/> + <text class="regexp" x="54" y="9085">[#x3131-#x318E]</text> + <polygon points="43 9110 46 9101 144 9101 147 9110 144 9119 46 9119" class="regexp"/> + <text class="regexp" x="54" y="9113">[#x31A0-#x31B7]</text> + <polygon points="43 9138 46 9129 144 9129 147 9138 144 9147 46 9147" class="regexp"/> + <text class="regexp" x="54" y="9141">[#x3400-#x4DB5]</text> + <polygon points="43 9166 46 9157 142 9157 145 9166 142 9175 46 9175" class="regexp"/> + <text class="regexp" x="54" y="9169">[#x4E00-#x9FA5]</text> + <polygon points="43 9194 46 9185 144 9185 147 9194 144 9203 46 9203" class="regexp"/> + <text class="regexp" x="54" y="9197">[#xA000-#xA48C]</text> + <polygon points="43 9222 46 9213 146 9213 149 9222 146 9231 46 9231" class="regexp"/> + <text class="regexp" x="54" y="9225">[#xAC00-#xD7A3]</text> + <polygon points="43 9250 46 9241 142 9241 145 9250 142 9259 46 9259" class="regexp"/> + <text class="regexp" x="54" y="9253">[#xF900-#xFA2D]</text> + <polygon points="43 9278 46 9269 142 9269 145 9278 142 9287 46 9287" class="regexp"/> + <text class="regexp" x="54" y="9281">[#xFB00-#xFB06]</text> + <polygon points="43 9306 46 9297 142 9297 145 9306 142 9315 46 9315" class="regexp"/> + <text class="regexp" x="54" y="9309">[#xFB13-#xFB17]</text> + <polygon points="43 9334 46 9325 144 9325 147 9334 144 9343 46 9343" class="regexp"/> + <text class="regexp" x="54" y="9337">[#xFB1D-#xFB28]</text> + <polygon points="43 9362 46 9353 142 9353 145 9362 142 9371 46 9371" class="regexp"/> + <text class="regexp" x="54" y="9365">[#xFB2A-#xFB36]</text> + <polygon points="43 9390 46 9381 142 9381 145 9390 142 9399 46 9399" class="regexp"/> + <text class="regexp" x="54" y="9393">[#xFB38-#xFB3C]</text> + <polygon points="43 9418 46 9409 102 9409 105 9418 102 9427 46 9427" class="regexp"/> + <text class="regexp" x="54" y="9421">[#xFB3E]</text> + <polygon points="43 9446 46 9437 142 9437 145 9446 142 9455 46 9455" class="regexp"/> + <text class="regexp" x="54" y="9449">[#xFB40-#xFB41]</text> + <polygon points="43 9474 46 9465 142 9465 145 9474 142 9483 46 9483" class="regexp"/> + <text class="regexp" x="54" y="9477">[#xFB43-#xFB44]</text> + <polygon points="43 9502 46 9493 142 9493 145 9502 142 9511 46 9511" class="regexp"/> + <text class="regexp" x="54" y="9505">[#xFB46-#xFBB1]</text> + <polygon points="43 9530 46 9521 146 9521 149 9530 146 9539 46 9539" class="regexp"/> + <text class="regexp" x="54" y="9533">[#xFBD3-#xFD3D]</text> + <polygon points="43 9558 46 9549 142 9549 145 9558 142 9567 46 9567" class="regexp"/> + <text class="regexp" x="54" y="9561">[#xFD50-#xFD8F]</text> + <polygon points="43 9586 46 9577 144 9577 147 9586 144 9595 46 9595" class="regexp"/> + <text class="regexp" x="54" y="9589">[#xFD92-#xFDC7]</text> + <polygon points="43 9614 46 9605 142 9605 145 9614 142 9623 46 9623" class="regexp"/> + <text class="regexp" x="54" y="9617">[#xFDF0-#xFDFB]</text> + <polygon points="43 9642 46 9633 142 9633 145 9642 142 9651 46 9651" class="regexp"/> + <text class="regexp" x="54" y="9645">[#xFE20-#xFE23]</text> + <polygon points="43 9670 46 9661 142 9661 145 9670 142 9679 46 9679" class="regexp"/> + <text class="regexp" x="54" y="9673">[#xFE33-#xFE34]</text> + <polygon points="43 9698 46 9689 142 9689 145 9698 142 9707 46 9707" class="regexp"/> + <text class="regexp" x="54" y="9701">[#xFE4D-#xFE4F]</text> + <polygon points="43 9726 46 9717 102 9717 105 9726 102 9735 46 9735" class="regexp"/> + <text class="regexp" x="54" y="9729">[#xFE69]</text> + <polygon points="43 9754 46 9745 142 9745 145 9754 142 9763 46 9763" class="regexp"/> + <text class="regexp" x="54" y="9757">[#xFE70-#xFE72]</text> + <polygon points="43 9782 46 9773 102 9773 105 9782 102 9791 46 9791" class="regexp"/> + <text class="regexp" x="54" y="9785">[#xFE74]</text> + <polygon points="43 9810 46 9801 142 9801 145 9810 142 9819 46 9819" class="regexp"/> + <text class="regexp" x="54" y="9813">[#xFE76-#xFEFC]</text> + <polygon points="43 9838 46 9829 100 9829 103 9838 100 9847 46 9847" class="regexp"/> + <text class="regexp" x="54" y="9841">[#xFEFF]</text> + <polygon points="43 9866 46 9857 102 9857 105 9866 102 9875 46 9875" class="regexp"/> + <text class="regexp" x="54" y="9869">[#xFF04]</text> + <polygon points="43 9894 46 9885 140 9885 143 9894 140 9903 46 9903" class="regexp"/> + <text class="regexp" x="54" y="9897">[#xFF10-#xFF19]</text> + <polygon points="43 9922 46 9913 140 9913 143 9922 140 9931 46 9931" class="regexp"/> + <text class="regexp" x="54" y="9925">[#xFF21-#xFF3A]</text> + <polygon points="43 9950 46 9941 100 9941 103 9950 100 9959 46 9959" class="regexp"/> + <text class="regexp" x="54" y="9953">[#xFF3F]</text> + <polygon points="43 9978 46 9969 140 9969 143 9978 140 9987 46 9987" class="regexp"/> + <text class="regexp" x="54" y="9981">[#xFF41-#xFF5A]</text> + <polygon points="43 10006 46 9997 140 9997 143 10006 140 10015 46 10015" class="regexp"/> + <text class="regexp" x="54" y="10009">[#xFF65-#xFFBE]</text> + <polygon points="43 10034 46 10025 142 10025 145 10034 142 10043 46 10043" class="regexp"/> + <text class="regexp" x="54" y="10037">[#xFFC2-#xFFC7]</text> + <polygon points="43 10062 46 10053 140 10053 143 10062 140 10071 46 10071" class="regexp"/> + <text class="regexp" x="54" y="10065">[#xFFCA-#xFFCF]</text> + <polygon points="43 10090 46 10081 142 10081 145 10090 142 10099 46 10099" class="regexp"/> + <text class="regexp" x="54" y="10093">[#xFFD2-#xFFD7]</text> + <polygon points="43 10118 46 10109 144 10109 147 10118 144 10127 46 10127" class="regexp"/> + <text class="regexp" x="54" y="10121">[#xFFDA-#xFFDC]</text> + <polygon points="43 10146 46 10137 140 10137 143 10146 140 10155 46 10155" class="regexp"/> + <text class="regexp" x="54" y="10149">[#xFFE0-#xFFE1]</text> + <polygon points="43 10174 46 10165 140 10165 143 10174 140 10183 46 10183" class="regexp"/> + <text class="regexp" x="54" y="10177">[#xFFE5-#xFFE6]</text> + <polygon points="43 10202 46 10193 138 10193 141 10202 138 10211 46 10211" class="regexp"/> + <text class="regexp" x="54" y="10205">[#xFFF9-#xFFFB]</text> + <path class="line" d="m17 10 h2 m20 0 h4 m14 0 h4 m0 0 h92 m-134 0 h20 m114 0 h20 m-154 0 q10 0 10 10 m134 0 q0 -10 10 -10 m-144 10 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m16 0 h4 m0 0 h90 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m42 0 h4 m0 0 h64 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m42 0 h4 m0 0 h64 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m14 0 h4 m0 0 h92 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m40 0 h4 m0 0 h66 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m68 0 h4 m0 0 h38 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m74 0 h4 m0 0 h32 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m78 0 h4 m0 0 h28 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m80 0 h4 m0 0 h26 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m52 0 h4 m0 0 h54 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m82 0 h4 m0 0 h24 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m80 0 h4 m0 0 h26 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m84 0 h4 m0 0 h22 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m92 0 h4 m0 0 h14 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m94 0 h4 m0 0 h12 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m96 0 h4 m0 0 h10 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m56 0 h4 m0 0 h50 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m90 0 h4 m0 0 h16 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m58 0 h4 m0 0 h48 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m64 0 h4 m0 0 h42 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m106 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m62 0 h4 m0 0 h44 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m60 0 h4 m0 0 h46 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m102 0 h4 m0 0 h4 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m104 0 h4 m0 0 h2 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m100 0 h4 m0 0 h6 m-124 -10 v20 m134 0 v-20 m-134 20 v8 m134 0 v-8 m-134 8 q0 10 10 10 m114 0 q10 0 10 -10 m-124 10 h4 m98 0 h4 m0 0 h8 m23 -10192 h-3"/> + <polygon points="183 10 191 6 191 14"/> + <polygon points="183 10 175 6 175 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#part-letter" title="PART_LETTER" shape="rect">PART_LETTER</a></div> + <div>         ::= [$@0-9A-Z_a-z#x23#x0-#x8#xE-#x1B#x7F-#x9F#xA2-#xA5#xAA#xB5#xBA#xC0-#xD6#xD8-#xF6#xF8-#x21F#x222-#x233#x250-#x2AD#x2B0-#x2B8#x2BB-#x2C1#x2D0-#x2D1#x2E0-#x2E4#x2EE#x300-#x34E#x360-#x362#x37A#x386#x388-#x38A#x38C#x38E-#x3A1#x3A3-#x3CE#x3D0-#x3D7#x3DA-#x3F3#x400-#x481#x483-#x486#x48C-#x4C4#x4C7-#x4C8#x4CB-#x4CC#x4D0-#x4F5#x4F8-#x4F9#x531-#x556#x559#x561-#x587#x591-#x5A1#x5A3-#x5B9#x5BB-#x5BD#x5BF#x5C1-#x5C2#x5C4#x5D0-#x5EA#x5F0-#x5F2#x621-#x63A#x640-#x655#x660-#x669#x670-#x6D3#x6D5-#x6DC#x6DF-#x6E8#x6EA-#x6ED#x6F0-#x6FC#x70F-#x72C#x730-#x74A#x780-#x7B0#x901-#x903#x905-#x939#x93C-#x94D#x950-#x954#x958-#x963#x966-#x96F#x981-#x983#x985-#x98C#x98F-#x990#x993-#x9A8#x9AA-#x9B0#x9B2#x9B6-#x9B9#x9BC#x9BE-#x9C4#x9C7-#x9C8#x9CB-#x9CD#x9D7#x9DC-#x9DD#x9DF-#x9E3#x9E6-#x9F3#xA02#xA05-#xA0A#xA0F-#xA10#xA13-#xA28#xA2A-#xA30#xA32-#xA33#xA35-#xA36#xA38-#xA39#xA3C#xA3E-#xA42#xA47-#xA48#xA4B-#xA4D#xA59-#xA5C#xA5E#xA66-#xA74#xA81-#xA83#xA85-#xA8B#xA8D#xA8F-#xA91#xA93-#xAA8#xAAA-#xAB0#xAB2-#xAB3#xAB5-#xAB9#xABC-#xAC5#xAC7-#xAC9#xACB-#xACD#xAD0#xAE0#xAE6-#xAEF#xB01-#xB03#xB05-#xB0C#xB0F-#xB10#xB13-#xB28#xB2A-#xB30#xB32-#xB33#xB36-#xB39#xB3C-#xB43#xB47-#xB48#xB4B-#xB4D#xB56-#xB57#xB5C-#xB5D#xB5F-#xB61#xB66-#xB6F#xB82-#xB83#xB85-#xB8A#xB8E-#xB90#xB92-#xB95#xB99-#xB9A#xB9C#xB9E-#xB9F#xBA3-#xBA4#xBA8-#xBAA#xBAE-#xBB5#xBB7-#xBB9#xBBE-#xBC2#xBC6-#xBC8#xBCA-#xBCD#xBD7#xBE7-#xBEF#xC01-#xC03#xC05-#xC0C#xC0E-#xC10#xC12-#xC28#xC2A-#xC33#xC35-#xC39#xC3E-#xC44#xC46-#xC48#xC4A-#xC4D#xC55-#xC56#xC60-#xC61#xC66-#xC6F#xC82-#xC83#xC85-#xC8C#xC8E-#xC90#xC92-#xCA8#xCAA-#xCB3#xCB5-#xCB9#xCBE-#xCC4#xCC6-#xCC8#xCCA-#xCCD#xCD5-#xCD6#xCDE#xCE0-#xCE1#xCE6-#xCEF#xD02-#xD03#xD05-#xD0C#xD0E-#xD10#xD12-#xD28#xD2A-#xD39#xD3E-#xD43#xD46-#xD48#xD4A-#xD4D#xD57#xD60-#xD61#xD66-#xD6F#xD82-#xD83#xD85-#xD96#xD9A-#xDB1#xDB3-#xDBB#xDBD#xDC0-#xDC6#xDCA#xDCF-#xDD4#xDD6#xDD8-#xDDF#xDF2-#xDF3#xE01-#xE3A#xE3F-#xE4E#xE50-#xE59#xE81-#xE82#xE84#xE87-#xE88#xE8A#xE8D#xE94-#xE97#xE99-#xE9F#xEA1-#xEA3#xEA5#xEA7#xEAA-#xEAB#xEAD-#xEB9#xEBB-#xEBD#xEC0-#xEC4#xEC6#xEC8-#xECD#xED0-#xED9#xEDC-#xEDD#xF00#xF18-#xF19#xF20-#xF29#xF35#xF37#xF39#xF3E-#xF47#xF49-#xF6A#xF71-#xF84#xF86-#xF8B#xF90-#xF97#xF99-#xFBC#xFC6#x1000-#x1021#x1023-#x1027#x1029-#x102A#x102C-#x1032#x1036-#x1039#x1040-#x1049#x1050-#x1059#x10A0-#x10C5#x10D0-#x10F6#x1100-#x1159#x115F-#x11A2#x11A8-#x11F9#x1200-#x1206#x1208-#x1246#x1248#x124A-#x124D#x1250-#x1256#x1258#x125A-#x125D#x1260-#x1286#x1288#x128A-#x128D#x1290-#x12AE#x12B0#x12B2-#x12B5#x12B8-#x12BE#x12C0#x12C2-#x12C5#x12C8-#x12CE#x12D0-#x12D6#x12D8-#x12EE#x12F0-#x130E#x1310#x1312-#x1315#x1318-#x131E#x1320-#x1346#x1348-#x135A#x1369-#x1371#x13A0-#x13F4#x1401-#x166C#x166F-#x1676#x1681-#x169A#x16A0-#x16EA#x1780-#x17D3#x17DB#x17E0-#x17E9#x180B-#x180E#x1810-#x1819#x1820-#x1877#x1880-#x18A9#x1E00-#x1E9B#x1EA0-#x1EF9#x1F00-#x1F15#x1F18-#x1F1D#x1F20-#x1F45#x1F48-#x1F4D#x1F50-#x1F57#x1F59#x1F5B#x1F5D#x1F5F-#x1F7D#x1F80-#x1FB4#x1FB6-#x1FBC#x1FBE#x1FC2-#x1FC4#x1FC6-#x1FCC#x1FD0-#x1FD3#x1FD6-#x1FDB#x1FE0-#x1FEC#x1FF2-#x1FF4#x1FF6-#x1FFC#x200C-#x200F#x202A-#x202E#x203F-#x2040#x206A-#x206F#x207F#x20A0-#x20AF#x20D0-#x20DC#x20E1#x2102#x2107#x210A-#x2113#x2115#x2119-#x211D#x2124#x2126#x2128#x212A-#x212D#x212F-#x2131#x2133-#x2139#x2160-#x2183#x3005-#x3007#x3021-#x302F#x3031-#x3035#x3038-#x303A#x3041-#x3094#x3099-#x309A#x309D-#x309E#x30A1-#x30FE#x3105-#x312C#x3131-#x318E#x31A0-#x31B7#x3400-#x4DB5#x4E00-#x9FA5#xA000-#xA48C#xAC00-#xD7A3#xF900-#xFA2D#xFB00-#xFB06#xFB13-#xFB17#xFB1D-#xFB28#xFB2A-#xFB36#xFB38-#xFB3C#xFB3E#xFB40-#xFB41#xFB43-#xFB44#xFB46-#xFBB1#xFBD3-#xFD3D#xFD50-#xFD8F#xFD92-#xFDC7#xFDF0-#xFDFB#xFE20-#xFE23#xFE33-#xFE34#xFE4D-#xFE4F#xFE69#xFE70-#xFE72#xFE74#xFE76-#xFEFC#xFEFF#xFF04#xFF10-#xFF19#xFF21-#xFF3A#xFF3F#xFF41-#xFF5A#xFF65-#xFFBE#xFFC2-#xFFC7#xFFCA-#xFFCF#xFFD2-#xFFD7#xFFDA-#xFFDC#xFFE0-#xFFE1#xFFE5-#xFFE6#xFFF9-#xFFFB]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#s-identifier" title="s-identifier">s-identifier</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + S_CHAR_LITERAL +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="355" height="222"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="34" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="46">U</text> + <rect x="43" y="62" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="74">E</text> + <rect x="43" y="90" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="102">N</text> + <rect x="43" y="118" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="130">R</text> + <rect x="43" y="146" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="158">B</text> + <rect x="43" y="174" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="186">RB</text> + <rect x="43" y="202" width="30" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="214">_utf8</text> + <rect x="101" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="105" y="25">'</text><a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#esc" xlink:title="ESC" shape="rect"> + <rect x="177" y="13" width="28" height="18" class="nonterminal"/> + <text class="nonterminal" x="181" y="25">ESC</text></a><polygon points="177 50 180 41 252 41 255 50 252 59 180 59" class="regexp"/> + <text class="regexp" x="188" y="53">[^'\#xA#xD]</text> + <rect x="177" y="83" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="181" y="95">''</text> + <polygon points="177 120 180 111 210 111 213 120 210 129 180 129" class="regexp"/> + <text class="regexp" x="188" y="123">[^']</text> + <rect x="323" y="13" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="327" y="25">'</text> + <path class="line" d="m17 22 h2 m20 0 h10 m0 0 h28 m-58 0 h20 m38 0 h20 m-78 0 q10 0 10 10 m58 0 q0 -10 10 -10 m-68 10 v1 m58 0 v-1 m-58 1 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m14 0 h4 m0 0 h16 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m12 0 h4 m0 0 h18 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m14 0 h4 m0 0 h16 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m14 0 h4 m0 0 h16 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m14 0 h4 m0 0 h16 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m20 0 h4 m0 0 h10 m-48 -10 v20 m58 0 v-20 m-58 20 v8 m58 0 v-8 m-58 8 q0 10 10 10 m38 0 q10 0 10 -10 m-48 10 h4 m30 0 h4 m20 -189 h4 m8 0 h4 m60 0 h4 m28 0 h4 m0 0 h50 m-106 0 h20 m86 0 h20 m-126 0 q10 0 10 10 m106 0 q0 -10 10 -10 m-116 10 v8 m106 0 v-8 m-106 8 q0 10 10 10 m86 0 q10 0 10 -10 m-96 10 h4 m78 0 h4 m-126 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m126 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-126 0 h10 m0 0 h116 m-166 21 h20 m166 0 h20 m-206 0 q10 0 10 10 m186 0 q0 -10 10 -10 m-196 10 v50 m186 0 v-50 m-186 50 q0 10 10 10 m166 0 q10 0 10 -10 m-136 10 h4 m10 0 h4 m0 0 h26 m-64 0 h20 m44 0 h20 m-84 0 q10 0 10 10 m64 0 q0 -10 10 -10 m-74 10 v8 m64 0 v-8 m-64 8 q0 10 10 10 m44 0 q10 0 10 -10 m-54 10 h4 m36 0 h4 m-84 -28 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m84 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-84 0 h10 m0 0 h74 m20 21 h42 m-176 -10 v20 m186 0 v-20 m-186 20 v29 m186 0 v-29 m-186 29 q0 10 10 10 m166 0 q10 0 10 -10 m-176 10 h10 m0 0 h156 m20 -119 h4 m8 0 h4 m3 0 h-3"/> + <polygon points="345 22 353 18 353 26"/> + <polygon points="345 22 337 18 337 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-char-literal" title="S_CHAR_LITERAL" shape="rect">S_CHAR_LITERAL</a></div> + <div>         ::= ( [UENRB] | 'RB' | '_utf8' )? "'" ( ( <a href="#esc" title="ESC" shape="rect">ESC</a> | [^'\#xA#xD] )* | ( "''" | [^'] )+ ) "'"</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alist" title="alist">alist</a></li><li><a href="#alias" title="alias">alias</a></li><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#altersession" title="altersession">altersession</a></li><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#comment" title="comment">comment</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#datetimeliteralexpression" title="datetimeliteralexpression">datetimeliteralexpression</a></li><li><a href="#extractexpression" title="extractexpression">extractexpression</a></li><li><a href="#fulltextsearch" title="fulltextsearch">fulltextsearch</a></li><li><a href="#inexpression" title="inexpression">inexpression</a></li><li><a href="#intervalexpression" title="intervalexpression">intervalexpression</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#jsonexpression" title="jsonexpression">jsonexpression</a></li><li><a href="#jsonfunction" title="jsonfunction">jsonfunction</a></li><li><a href="#mysqlgroupconcat" title="mysqlgroupconcat">mysqlgroupconcat</a></li><li><a href="#plainselect" title="plainselect">plainselect</a></li><li><a href="#primaryexpression" title="primaryexpression">primaryexpression</a></li><li><a href="#rollbackstatement" title="rollbackstatement">rollbackstatement</a></li><li><a href="#similartoexpression" title="similartoexpression">similartoexpression</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + S_QUOTED_IDENTIFIER +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="307" height="195"> + <polygon points="9 22 1 18 1 26"/> + <polygon points="17 22 9 18 9 26"/> + <rect x="43" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="25">"</text> + <polygon points="103 22 106 13 178 13 181 22 178 31 106 31" class="regexp"/> + <text class="regexp" x="114" y="25">[^"#xA#xD]</text> + <rect x="229" y="13" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="233" y="25">"</text> + <rect x="43" y="67" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="79">$$</text> + <polygon points="111 76 114 67 186 67 189 76 186 85 114 85" class="regexp"/> + <text class="regexp" x="122" y="79">[^"#xA#xD]</text> + <rect x="237" y="67" width="20" height="18" class="terminal" rx="4"/> + <text class="terminal" x="241" y="79">$$</text> + <rect x="43" y="121" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="133">`</text> + <polygon points="85 130 88 121 162 121 165 130 162 139 88 139" class="regexp"/> + <text class="regexp" x="96" y="133">[^`#xA#xD]</text> + <rect x="193" y="121" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="197" y="133">`</text> + <rect x="43" y="163" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="47" y="175">[</text> + <polygon points="103 172 106 163 200 163 203 172 200 181 106 181" class="regexp"/> + <text class="regexp" x="114" y="175">[^#x5D#xA#xD]</text> + <rect x="251" y="163" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="255" y="175">]</text> + <path class="line" d="m17 22 h2 m20 0 h4 m12 0 h4 m40 0 h4 m78 0 h4 m-106 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m86 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-86 0 h10 m0 0 h76 m-126 21 h20 m126 0 h20 m-166 0 q10 0 10 10 m146 0 q0 -10 10 -10 m-156 10 v1 m146 0 v-1 m-146 1 q0 10 10 10 m126 0 q10 0 10 -10 m-136 10 h10 m0 0 h116 m20 -21 h4 m12 0 h4 m0 0 h22 m-248 0 h20 m228 0 h20 m-268 0 q10 0 10 10 m248 0 q0 -10 10 -10 m-258 10 v34 m248 0 v-34 m-248 34 q0 10 10 10 m228 0 q10 0 10 -10 m-238 10 h4 m20 0 h4 m40 0 h4 m78 0 h4 m-106 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m86 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-86 0 h10 m0 0 h76 m-126 21 h20 m126 0 h20 m-166 0 q10 0 10 10 m146 0 q0 -10 10 -10 m-156 10 v1 m146 0 v-1 m-146 1 q0 10 10 10 m126 0 q10 0 10 -10 m-136 10 h10 m0 0 h116 m20 -21 h4 m20 0 h4 m0 0 h6 m-238 -10 v20 m248 0 v-20 m-248 20 v34 m248 0 v-34 m-248 34 q0 10 10 10 m228 0 q10 0 10 -10 m-238 10 h4 m14 0 h4 m20 0 h4 m80 0 h4 m-108 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m88 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-88 0 h10 m0 0 h78 m20 21 h4 m14 0 h4 m0 0 h56 m-238 -10 v20 m248 0 v-20 m-248 20 v22 m248 0 v-22 m-248 22 q0 10 10 10 m228 0 q10 0 10 -10 m-238 10 h4 m12 0 h4 m40 0 h4 m100 0 h4 m-128 0 l20 0 m-1 0 q-9 0 -9 -10 l0 -1 q0 -10 10 -10 m108 21 l20 0 m-20 0 q10 0 10 -10 l0 -1 q0 -10 -10 -10 m-108 0 h10 m0 0 h98 m-148 21 h20 m148 0 h20 m-188 0 q10 0 10 10 m168 0 q0 -10 10 -10 m-178 10 v1 m168 0 v-1 m-168 1 q0 10 10 10 m148 0 q10 0 10 -10 m-158 10 h10 m0 0 h138 m20 -21 h4 m12 0 h4 m23 -150 h-3"/> + <polygon points="297 22 305 18 305 26"/> + <polygon points="297 22 289 18 289 26"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#s-quoted-identifier" title="S_QUOTED_IDENTIFIER" shape="rect">S_QUOTED_IDENTIFIER</a></div> + <div>         ::= '"' [^"#xA#xD]* '"'</div> + <div>           | '$$' [^"#xA#xD]* '$$'</div> + <div>           | '`' [^`#xA#xD]+ '`'</div> + <div>           | '[' [^#x5D#xA#xD]* ']'</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#alterexpression" title="alterexpression">alterexpression</a></li><li><a href="#coldatatype" title="coldatatype">coldatatype</a></li><li><a href="#createparameter" title="createparameter">createparameter</a></li><li><a href="#createschema" title="createschema">createschema</a></li><li><a href="#jsonaggregatefunction" title="jsonaggregatefunction">jsonaggregatefunction</a></li><li><a href="#pathspecification" title="pathspecification">pathspecification</a></li><li><a href="#relobjectnamewithoutvalue" title="relobjectnamewithoutvalue">relobjectnamewithoutvalue</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + ESC +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="121" height="217"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <rect x="23" y="1" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="27" y="13">\</text> + <rect x="63" y="1" width="14" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="13">n</text> + <rect x="63" y="29" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="41">t</text> + <rect x="63" y="57" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="69">b</text> + <rect x="63" y="85" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="97">r</text> + <rect x="63" y="113" width="10" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="125">f</text> + <rect x="63" y="141" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="153">\</text> + <rect x="63" y="169" width="8" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="181">'</text> + <rect x="63" y="197" width="12" height="18" class="terminal" rx="4"/> + <text class="terminal" x="67" y="209">"</text> + <path class="line" d="m17 10 h2 m0 0 h4 m12 0 h4 m20 0 h4 m14 0 h4 m-42 0 h20 m22 0 h20 m-62 0 q10 0 10 10 m42 0 q0 -10 10 -10 m-52 10 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m10 0 h4 m0 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m12 0 h4 m0 0 h2 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m10 0 h4 m0 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m10 0 h4 m0 0 h4 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m12 0 h4 m0 0 h2 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m8 0 h4 m0 0 h6 m-32 -10 v20 m42 0 v-20 m-42 20 v8 m42 0 v-8 m-42 8 q0 10 10 10 m22 0 q10 0 10 -10 m-32 10 h4 m12 0 h4 m0 0 h2 m23 -196 h-3"/> + <polygon points="111 10 119 6 119 14"/> + <polygon points="111 10 103 6 103 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#esc" title="ESC" shape="rect">ESC</a>      ::= '\' [ntbrf\'"]</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#s-char-literal" title="s-char-literal">s-char-literal</a></li></ul></div></td></tr></tbody></table> + + +====================================================================================================================== + EOF +====================================================================================================================== + + +.. raw:: html + + <svg xmlns="http://www.w3.org/2000/svg" width="73" height="21"> + <polygon points="9 10 1 6 1 14"/> + <polygon points="17 10 9 6 9 14"/> + <polygon points="23 10 26 1 46 1 49 10 46 19 26 19" class="regexp"/> + <text class="regexp" x="34" y="13">$</text> + <path class="line" d="m17 10 h2 m0 0 h4 m26 0 h4 m3 0 h-3"/> + <polygon points="63 10 71 6 71 14"/> + <polygon points="63 10 55 6 55 14"/></svg><table xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" style="width:100%"><tbody><tr><td style="width:67%" valign="top"><xhtml:p xmlns="http://www.w3.org/1999/xhtml"> + <xhtml:div class="ebnf"><xhtml:code> + <div><a href="#eof" title="EOF" shape="rect">EOF</a>      ::= $</div></xhtml:code></xhtml:div> + </xhtml:p></td><td style="width:33%" valign="top"><div class="ebnf"> + Referenced by: + <ul><li><a href="#statement" title="statement">statement</a></li><li><a href="#statements" title="statements">statements</a></li></ul></div></td></tr></tbody></table> + + \ No newline at end of file diff --git a/src/site/sphinx/usage.rst b/src/site/sphinx/usage.rst new file mode 100644 index 000000000..b3895b0e3 --- /dev/null +++ b/src/site/sphinx/usage.rst @@ -0,0 +1,226 @@ +****************************** +How to use it +****************************** + +.. warning:: + + 1) Parsing **T-SQL on MS SQL Server** or Sybase depends on ``Squared Bracket Quotation`` as shown in section :ref:`Define the Parser Features` below. + + 2) JSQLParser uses a more restrictive list of ``Reserved Keywords`` and such keywords will **need to be quoted**. + + + +Compile from Source Code +============================== + +You will need to have ``JDK 8`` or ``JDK 11`` installed. + +.. tabs:: + + .. tab:: Maven + + .. code-block:: shell + + git clone https://github.com/JSQLParser/JSqlParser.git + cd jsqlformatter + mvn install + + .. tab:: Gradle + + .. code-block:: shell + + git clone https://github.com/JSQLParser/JSqlParser.git + cd jsqlformatter + gradle build + + + +Build Dependencies +============================== + +.. tabs:: + + + .. tab:: Maven Release + + .. code-block:: xml + :substitutions: + + <dependency> + <groupId>com.github.jsqlparser</groupId> + <artifactId>jsqlparser</artifactId> + <version>|JSQLPARSER_VERSION|</version> + </dependency> + + .. tab:: Maven Snapshot + + .. code-block:: xml + :substitutions: + + <repositories> + <repository> + <id>jsqlparser-snapshots</id> + <snapshots> + <enabled>true</enabled> + </snapshots> + <url>https://oss.sonatype.org/content/groups/public/</url> + </repository> + </repositories> + <dependency> + <groupId>com.github.jsqlparser</groupId> + <artifactId>jsqlparser</artifactId> + <version>|JSQLPARSER_SNAPSHOT_VERSION|</version> + </dependency> + + .. tab:: Gradle Stable + + .. code-block:: groovy + :substitutions: + + repositories { + mavenCentral() + } + + dependencies { + implementation 'com.github.jsqlparser:jsqlparser:|JSQLPARSER_VERSION|' + } + + .. tab:: Gradle Snapshot + + .. code-block:: groovy + :substitutions: + + repositories { + maven { + url = uri('https://oss.sonatype.org/content/groups/public/') + } + } + + dependencies { + implementation 'com.github.jsqlparser:jsqlparser:|JSQLPARSER_SNAPSHOT_VERSION|' + } + + +Parse a SQL Statements +============================== + +Parse the SQL Text into Java Objects: + +.. code-block:: java + + String sqlStr="select 1 from dual where a=b"; + + Statement statement = CCJSqlParserUtil.parse(sqlStr); + if (statement instanceof Select) { + Select select = (Select) statement; + PlainSelect plainSelect = (PlainSelect) select.getSelectBody(); + + SelectExpressionItem selectExpressionItem = (SelectExpressionItem) plainSelect.getSelectItems().get(0); + Assertions.assertEquals( new LongValue(1), selectExpressionItem.getExpression()); + + Table table = (Table) plainSelect.getFromItem(); + Assertions.assertEquals("dual", table.getName()); + + EqualsTo equalsTo = (EqualsTo) plainSelect.getWhere(); + Column a = (Column) equalsTo.getLeftExpression(); + Column b = (Column) equalsTo.getRightExpression(); + Assertions.assertEquals("a", a.getColumnName()); + Assertions.assertEquals("b", b.getColumnName()); + } + + +For guidance with the API, use `JSQLFormatter <http://jsqlformatter.manticore-projects.com>`_ to visualize the Traversable Tree of Java Objects: + +.. raw:: html + + <div class="highlight"> + <pre> + SQL Text + └─<font color="#739FCF"><b>Statements</b></font>: <font color="#836B00">net.sf.jsqlparser.statement.select.Select</font> + └─<font color="#739FCF"><b>selectBody</b></font>: <font color="#836B00">net.sf.jsqlparser.statement.select.PlainSelect</font> + ├─<font color="#739FCF"><b>selectItems</b></font> -> Collection<<font color="#836B00">SelectExpressionItem</font>> + │ └─<font color="#739FCF"><b>selectItems</b></font>: <font color="#836B00">net.sf.jsqlparser.statement.select.SelectExpressionItem</font> + │ └─<font color="#739FCF"><b>LongValue</b></font>: <font color="#836B00">1</font> + ├─<font color="#739FCF"><b>Table</b></font>: <font color="#836B00">dual</font> + └─<font color="#739FCF"><b>where</b></font>: <font color="#836B00">net.sf.jsqlparser.expression.operators.relational.EqualsTo</font> + ├─<font color="#739FCF"><b>Column</b></font>: <font color="#836B00">a</font> + └─<font color="#739FCF"><b>Column</b></font>: <font color="#836B00">b</font> + </pre> + </div> + + +Use the Visitor Patterns +============================== + +Traverse the Java Object Tree using the Visitor Patterns: + +.. code-block:: java + + // Define an Expression Visitor reacting on any Expression + // Overwrite the visit() methods for each Expression Class + ExpressionVisitorAdapter expressionVisitorAdapter = new ExpressionVisitorAdapter() { + public void visit(EqualsTo equalsTo) { + equalsTo.getLeftExpression().accept(this); + equalsTo.getRightExpression().accept(this); + } + public void visit(Column column) { + System.out.println("Found a Column " + column.getColumnName()); + } + }; + + // Define a Select Visitor reacting on a Plain Select invoking the Expression Visitor on the Where Clause + SelectVisitorAdapter selectVisitorAdapter = new SelectVisitorAdapter() { + @Override + public void visit(PlainSelect plainSelect) { + plainSelect.getWhere().accept(expressionVisitorAdapter); + } + }; + + // Define a Statement Visitor for dispatching the Statements + StatementVisitorAdapter statementVisitor = new StatementVisitorAdapter() { + public void visit(Select select) { + select.getSelectBody().accept(selectVisitorAdapter); + } + }; + + String sqlStr="select 1 from dual where a=b"; + Statement stmt = CCJSqlParserUtil.parse(sqlStr); + + // Invoke the Statement Visitor + stmt.accept(statementVisitor); + + +Define the Parser Features +============================== + +JSQLParser interprets Squared Brackets ``[..]`` as Arrays, which does not work with MS SQL Server and T-SQL. Please use the Parser Features to instruct JSQLParser to read Squared Brackets as Quotes instead. + +Additionally there are Features to control the Parser's effort at the cost of the performance. + +.. code-block:: java + + String sqlStr="select 1 from [sample_table] where [a]=[b]"; + + // T-SQL Square Bracket Quotation + Statement stmt = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + ); + + // Set Parser Timeout to 6000 ms + Statement stmt1 = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + .withTimeOut(6000) + ); + + // Allow Complex Parsing (which allows nested Expressions, but is much slower) + Statement stmt2 = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + .withAllowComplexParsing(true) + .withTimeOut(6000) + ); diff --git a/src/test/java/net/sf/jsqlparser/parser/ParserKeywordsUtilsTest.java b/src/test/java/net/sf/jsqlparser/parser/ParserKeywordsUtilsTest.java index a2039360f..57b465d61 100644 --- a/src/test/java/net/sf/jsqlparser/parser/ParserKeywordsUtilsTest.java +++ b/src/test/java/net/sf/jsqlparser/parser/ParserKeywordsUtilsTest.java @@ -9,23 +9,156 @@ */ package net.sf.jsqlparser.parser; +import org.javacc.jjtree.JJTree; +import org.javacc.parser.JavaCCGlobals; +import org.javacc.parser.JavaCCParser; +import org.javacc.parser.RCharacterList; +import org.javacc.parser.RChoice; +import org.javacc.parser.RJustName; +import org.javacc.parser.ROneOrMore; +import org.javacc.parser.RSequence; +import org.javacc.parser.RStringLiteral; +import org.javacc.parser.RZeroOrMore; +import org.javacc.parser.RZeroOrOne; +import org.javacc.parser.RegularExpression; +import org.javacc.parser.Semanticize; +import org.javacc.parser.Token; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.io.File; import java.io.IOException; +import java.io.InvalidClassException; +import java.nio.charset.CharsetEncoder; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.Set; +import java.util.TreeSet; import java.util.logging.Logger; class ParserKeywordsUtilsTest { + public final static CharsetEncoder CHARSET_ENCODER = StandardCharsets.US_ASCII.newEncoder(); + final static File FILE = new File("src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt"); final static Logger LOGGER = Logger.getLogger(ParserKeywordsUtilsTest.class.getName()); - @Test - void main() { + + private static void addTokenImage(TreeSet<String> allKeywords, RStringLiteral literal) { + if (CHARSET_ENCODER.canEncode(literal.image) && literal.image.matches("[A-Za-z]+")) { + allKeywords.add(literal.image); + } + } + + @SuppressWarnings({"PMD.EmptyIfStmt", "PMD.CyclomaticComplexity"}) + private static void addTokenImage(TreeSet<String> allKeywords, Object o) throws Exception { + if (o instanceof RStringLiteral) { + RStringLiteral literal = (RStringLiteral) o; + addTokenImage(allKeywords, literal); + } else if (o instanceof RChoice) { + RChoice choice = (RChoice) o; + addTokenImage(allKeywords, choice); + } else if (o instanceof RSequence) { + RSequence sequence1 = (RSequence) o; + addTokenImage(allKeywords, sequence1); + } else if (o instanceof ROneOrMore) { + ROneOrMore oneOrMore = (ROneOrMore) o ; + addTokenImage(allKeywords, oneOrMore); + } else if (o instanceof RZeroOrMore) { + RZeroOrMore zeroOrMore = (RZeroOrMore) o ; + addTokenImage(allKeywords, zeroOrMore); + } else if (o instanceof RZeroOrOne) { + RZeroOrOne zeroOrOne = (RZeroOrOne) o ; + addTokenImage(allKeywords, zeroOrOne); + } else if (o instanceof RJustName) { + RJustName zeroOrOne = (RJustName) o ; + addTokenImage(allKeywords, zeroOrOne); + } else if (o instanceof RCharacterList) { + // do nothing, we are not interested in those + } else { + throw new InvalidClassException("Unknown Type: " + o.getClass().getName() + " " + o.toString()); + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, RSequence sequence) throws Exception { + for (Object o: sequence.units) { + addTokenImage(allKeywords, o); + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, ROneOrMore oneOrMore) { + for (Token token: oneOrMore.lhsTokens) { + if (CHARSET_ENCODER.canEncode(token.image)) { + allKeywords.add(token.image); + } + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, RZeroOrMore oneOrMore) { + for (Token token: oneOrMore.lhsTokens) { + if (CHARSET_ENCODER.canEncode(token.image)) { + allKeywords.add(token.image); + } + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, RZeroOrOne oneOrMore) { + for (Token token: oneOrMore.lhsTokens) { + if (CHARSET_ENCODER.canEncode(token.image)) { + allKeywords.add(token.image); + } + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, RJustName oneOrMore) { + for (Token token: oneOrMore.lhsTokens) { + if (CHARSET_ENCODER.canEncode(token.image)) { + allKeywords.add(token.image); + } + } + } + + private static void addTokenImage(TreeSet<String> allKeywords, RChoice choice) throws Exception { + for (Object o: choice.getChoices()) { + addTokenImage(allKeywords, o); + } + } + + public static TreeSet<String> getAllKeywordsUsingJavaCC(File file) throws Exception { + TreeSet<String> allKeywords = new TreeSet<>(); + + Path jjtGrammar = file.toPath(); + Path jjGrammarOutputDir = Files.createTempDirectory("jjgrammer"); + + new JJTree().main(new String[]{ + "-JDK_VERSION=1.8", + "-OUTPUT_DIRECTORY=" + jjGrammarOutputDir.toString(), + jjtGrammar.toString() + }); + Path jjGrammarFile = jjGrammarOutputDir.resolve("JSqlParserCC.jj"); + + JavaCCParser parser = new JavaCCParser(new java.io.FileInputStream(jjGrammarFile.toFile())); + parser.javacc_input(); + + // needed for filling JavaCCGlobals + Semanticize.start(); + + // read all the Token and get the String image + for (Map.Entry<Integer, RegularExpression> item : JavaCCGlobals.rexps_of_tokens.entrySet()) { + addTokenImage(allKeywords, item.getValue()); + } + + //clean up + if (jjGrammarOutputDir.toFile().exists()) { + jjGrammarOutputDir.toFile().delete(); + } + + return allKeywords; } @Test @@ -36,7 +169,7 @@ void getAllKeywords() throws IOException { @Test void getAllKeywordsUsingJavaCC() throws Exception { - Set<String> allKeywords = ParserKeywordsUtils.getAllKeywordsUsingJavaCC(FILE); + Set<String> allKeywords = getAllKeywordsUsingJavaCC(FILE); Assertions.assertFalse( allKeywords.isEmpty(), "Keyword List must not be empty!" ); } @@ -44,7 +177,7 @@ void getAllKeywordsUsingJavaCC() throws Exception { @Test void compareKeywordLists() throws Exception { Set<String> allRegexKeywords = ParserKeywordsUtils.getAllKeywordsUsingRegex(FILE); - Set<String> allJavaCCParserKeywords = ParserKeywordsUtils.getAllKeywordsUsingJavaCC(FILE); + Set<String> allJavaCCParserKeywords = getAllKeywordsUsingJavaCC(FILE); // Exceptions, which should not have been found from the RegEx List<String> exceptions = Arrays.asList("0x"); diff --git a/src/test/java/net/sf/jsqlparser/test/HowToUseSample.java b/src/test/java/net/sf/jsqlparser/test/HowToUseSample.java new file mode 100644 index 000000000..c2e6a71c9 --- /dev/null +++ b/src/test/java/net/sf/jsqlparser/test/HowToUseSample.java @@ -0,0 +1,132 @@ +/*- + * #%L + * JSQLParser library + * %% + * Copyright (C) 2004 - 2022 JSQLParser + * %% + * Dual licensed under GNU LGPL 2.1 or Apache License 2.0 + * #L% + */ +package net.sf.jsqlparser.test; + +import net.sf.jsqlparser.JSQLParserException; +import net.sf.jsqlparser.expression.ExpressionVisitorAdapter; +import net.sf.jsqlparser.expression.LongValue; +import net.sf.jsqlparser.expression.operators.relational.EqualsTo; +import net.sf.jsqlparser.parser.CCJSqlParserUtil; +import net.sf.jsqlparser.schema.Column; +import net.sf.jsqlparser.schema.Table; +import net.sf.jsqlparser.statement.Statement; +import net.sf.jsqlparser.statement.StatementVisitorAdapter; +import net.sf.jsqlparser.statement.select.PlainSelect; +import net.sf.jsqlparser.statement.select.Select; +import net.sf.jsqlparser.statement.select.SelectExpressionItem; +import net.sf.jsqlparser.statement.select.SelectVisitorAdapter; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +@SuppressWarnings("PMD") +public class HowToUseSample { + /* + SQL Text + └─Statements: net.sf.jsqlparser.statement.select.Select + └─selectBody: net.sf.jsqlparser.statement.select.PlainSelect + ├─selectItems -> Collection<SelectExpressionItem> + │ └─selectItems: net.sf.jsqlparser.statement.select.SelectExpressionItem + │ └─LongValue: 1 + ├─Table: dual + └─where: net.sf.jsqlparser.expression.operators.relational.EqualsTo + ├─Column: a + └─Column: b + */ + + @Test + public void howToParseStatement() throws JSQLParserException { + String sqlStr="select 1 from dual where a=b"; + + Statement statement = CCJSqlParserUtil.parse(sqlStr); + if (statement instanceof Select) { + Select select = (Select) statement; + PlainSelect plainSelect = (PlainSelect) select.getSelectBody(); + + SelectExpressionItem selectExpressionItem = (SelectExpressionItem) plainSelect.getSelectItems().get(0); + Assertions.assertEquals( new LongValue(1), selectExpressionItem.getExpression()); + + Table table = (Table) plainSelect.getFromItem(); + Assertions.assertEquals("dual", table.getName()); + + EqualsTo equalsTo = (EqualsTo) plainSelect.getWhere(); + Column a = (Column) equalsTo.getLeftExpression(); + Column b = (Column) equalsTo.getRightExpression(); + Assertions.assertEquals("a", a.getColumnName()); + Assertions.assertEquals("b", b.getColumnName()); + } + } + + @Test + public void howToUseVisitors() throws JSQLParserException { + + // Define an Expression Visitor reacting on any Expression + // Overwrite the visit() methods for each Expression Class + ExpressionVisitorAdapter expressionVisitorAdapter = new ExpressionVisitorAdapter() { + public void visit(EqualsTo equalsTo) { + equalsTo.getLeftExpression().accept(this); + equalsTo.getRightExpression().accept(this); + } + public void visit(Column column) { + System.out.println("Found a Column " + column.getColumnName()); + } + }; + + // Define a Select Visitor reacting on a Plain Select invoking the Expression Visitor on the Where Clause + SelectVisitorAdapter selectVisitorAdapter = new SelectVisitorAdapter() { + @Override + public void visit(PlainSelect plainSelect) { + plainSelect.getWhere().accept(expressionVisitorAdapter); + } + }; + + // Define a Statement Visitor for dispatching the Statements + StatementVisitorAdapter statementVisitor = new StatementVisitorAdapter() { + public void visit(Select select) { + select.getSelectBody().accept(selectVisitorAdapter); + } + }; + + String sqlStr="select 1 from dual where a=b"; + Statement stmt = CCJSqlParserUtil.parse(sqlStr); + + // Invoke the Statement Visitor + stmt.accept(statementVisitor); + } + + @Test + public void howToUseFeatures() throws JSQLParserException { + + String sqlStr="select 1 from [sample_table] where [a]=[b]"; + + // T-SQL Square Bracket Quotation + Statement stmt = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + ); + + // Set Parser Timeout to 6000 ms + Statement stmt1 = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + .withTimeOut(6000) + ); + + // Allow Complex Parsing (which allows nested Expressions, but is much slower) + Statement stmt2 = CCJSqlParserUtil.parse( + sqlStr + , parser -> parser + .withSquareBracketQuotation(true) + .withAllowComplexParsing(true) + .withTimeOut(6000) + ); + } +}