Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

任务:新的SQL路由函数 #6

Open
leader-us opened this issue Sep 30, 2016 · 2 comments
Open

任务:新的SQL路由函数 #6

leader-us opened this issue Sep 30, 2016 · 2 comments
Labels

Comments

@leader-us
Copy link

难度S级别,持续改进预计半年以上,需要思维严谨,熟悉和感兴趣SQL解析的牛人来实现,大家完善

函数一:实现简单高效的SQL扫描,只返回回SQL中的Table信息,以及每个Table字符串结束的位置,用于下一步深入分析
如SQL =select * from tablea A where A.xx= bbb left join tableb B ....
则返回结果
tablea,alias A , indexEnd 22
tableb alias B indexEnd 33

函数二:
深入分析
返回
tablea condition:s xx= bbb ,select colums:*
joins: tablea.xx with tableb.yyy

@forchid
Copy link

forchid commented Sep 30, 2016

我计划采用h2database的SQL parser来实现,作为Mycat-2.0内置的parser.
H2 SQL 参考:http://www.h2database.com/html/grammar.html

@apachemycat
Copy link
Contributor

VoltDB uses our own fork of modules from the HSQL project within our product.
Most of VoltDB's SQL DDL and SQL statement parsing uses HSQL's parser.
Various tools and utilites in the VoltDB package also use other components from the HSQL project, such as its tar file interface.

Finally, to answer your specific question, the VoltDB test frameworks use a database engine closely based on HSQL's to generate baseline results for comparison with VoltDB results.
THIS aspect of HSQL -- its use as an alternative "backend" database engine for testing -- is usually the intent when the term "HSQL" is used in VoltDB test code.

@ynfeng ynfeng added the expired label Jul 26, 2017
zwyqz pushed a commit to zwyqz/Mycat2 that referenced this issue Oct 31, 2018
前端状态同步到后端基础完成
zwyqz pushed a commit to zwyqz/Mycat2 that referenced this issue Oct 31, 2018
zwyqz pushed a commit to zwyqz/Mycat2 that referenced this issue Oct 31, 2018
zwyqz pushed a commit to zwyqz/Mycat2 that referenced this issue Oct 31, 2018
zwyqz pushed a commit to zwyqz/Mycat2 that referenced this issue Nov 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants