A basic Parser Generator for an OQL like language.
To compile and build the executable oql execute the following commands:
* $make clean
* $make
To execute a query:
$ ./oql
Output:
The output consists of:
1. The output of the query is printed under the heading "OUTPUT"
1. The expression tree constructed in prefix is printed.
Structure of the Testflow.db file:
SHOW FULL COLUMNS FROM `jrk_downrecords` [ RunTime:0.001237s ]
SELECT `a`.`aid`,`a`.`title`,`a`.`create_time`,`m`.`username` FROM `jrk_downrecords` `a` INNER JOIN `jrk_member` `m` ON `a`.`uid`=`m`.`id` WHERE `a`.`status` = 1 GROUP BY `a`.`aid` ORDER BY `a`.`create_time` DESC LIMIT 10 [ RunTime:0.060284s ]
SHOW FULL COLUMNS FROM `jrk_tagrecords` [ RunTime:0.000907s ]
SELECT * FROM `jrk_tagrecords` WHERE `status` = 1 ORDER BY `num` DESC LIMIT 20 [ RunTime:0.001056s ]
SHOW FULL COLUMNS FROM `jrk_member` [ RunTime:0.001026s ]
SELECT `id`,`username`,`userhead`,`usertime` FROM `jrk_member` WHERE `status` = 1 ORDER BY `usertime` DESC LIMIT 10 [ RunTime:0.003065s ]
SHOW FULL COLUMNS FROM `jrk_searchrecords` [ RunTime:0.000767s ]
SELECT * FROM `jrk_searchrecords` WHERE `status` = 1 ORDER BY `num` DESC LIMIT 5 [ RunTime:0.003526s ]
SELECT aid,title,count(aid) as c FROM `jrk_downrecords` GROUP BY `aid` ORDER BY `c` DESC LIMIT 10 [ RunTime:0.014432s ]
SHOW FULL COLUMNS FROM `jrk_articles` [ RunTime:0.001090s ]
UPDATE `jrk_articles` SET `hits` = 2 WHERE `id` = 231381 [ RunTime:0.015271s ]