<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to SQL</title><link>https://sourceforge.net/p/shproto/home/SQL/</link><description>Recent changes to SQL</description><atom:link href="https://sourceforge.net/p/shproto/home/SQL/feed" rel="self"/><language>en</language><lastBuildDate>Tue, 15 Nov 2011 10:14:42 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/shproto/home/SQL/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage SQL modified by mikerez</title><link>https://sourceforge.net/p/shproto/home/SQL/</link><description>&lt;pre&gt;--- v2 
+++ v3 
@@ -1,4 +1,6 @@
-### SQL **draft** ###
+### SQL parser ###
+
+*** DRAFT! ***
 
     :::bash
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mikerez</dc:creator><pubDate>Tue, 15 Nov 2011 10:14:42 -0000</pubDate><guid>https://sourceforge.nete9fd89f1a0839506c128cf2f7eaaab6486ac29a6</guid></item><item><title>WikiPage SQL modified by mikerez</title><link>https://sourceforge.net/p/shproto/home/SQL/</link><description>&lt;pre&gt;--- v1 
+++ v2 
@@ -1,4 +1,4 @@
-### SQL ***draft*** ###
+### SQL **draft** ###
 
     :::bash
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mikerez</dc:creator><pubDate>Tue, 15 Nov 2011 10:14:21 -0000</pubDate><guid>https://sourceforge.netd1ae02776c991c3015af33086da1527df6a6d0de</guid></item><item><title>WikiPage SQL modified by mikerez</title><link>https://sourceforge.net/p/shproto/home/SQL/</link><description>### SQL ***draft*** ###

    :::bash

    'SELECT' [ \t] &lt;SELECT&gt;
    'UPDATE' [ \t] &lt;UPDATE&gt;
    'DELETE' [ \t] &lt;DELETE&gt;
    
    &lt;@SELECT&gt;
        &lt;FIELDS&gt;
            &lt;FIELDS&gt; &lt;WHERE&gt; [ \t]* 'ORDER BY' &lt;FIELDS&gt; [ \t]* 'LIMIT' count:u32 ";"
            default: ";" $
    
    &lt;@FIELDS&gt;       # used for tables list also, could be splitted for better syntax checking
        [ \t]*
        "(" \
            'SELECT' &lt;SELECT&gt; ")"
            default: &lt;FIELD&gt; ")"
        'AS' [ \t] alias:substring(32,",")
        'INNER JOIN' [ \t]
        'OUTER JOIN' [ \t]
        'JOIN' [ \t]
        'FROM' [ \t] $$
        'LIMIT' [ \t] $$
        ","
        ";" $
        default(32): &lt;FIELD&gt;
    
    &lt;@FIELD&gt;
        field:substring(128,",(")
            "(" &lt;FIELD&gt;
            default: $$
    
    &lt;@WHERE&gt;
        [ \t]*
        'AND' [ \t]
        'OR' [ \t]
        'EXISTS' [ \t]
        "("
            'SELECT' &lt;SELECT&gt; ")"
            default: &lt;WHERE&gt; ")"
        "=="
        "&gt;"
            "="
            default:
        "&lt;"
            "="
            default:
        expression:substring(128,"(&lt;&gt;=")
    
    &lt;@UPDATE&gt; # TODO
    &lt;@DELETE&gt; # TODO
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mikerez</dc:creator><pubDate>Tue, 15 Nov 2011 10:14:05 -0000</pubDate><guid>https://sourceforge.net16ed8a73adda211cb8267f3ecefe6dc27c34d3c1</guid></item></channel></rss>