SyntaxSQLNet: Syntax Tree Networks for Complex and Cross-DomainText-to-SQL Task
About
Most existing studies in text-to-SQL tasks do not require generating complex SQL queries with multiple clauses or sub-queries, and generalizing to new, unseen databases. In this paper we propose SyntaxSQLNet, a syntax tree network to address the complex and cross-domain text-to-SQL generation task. SyntaxSQLNet employs a SQL specific syntax tree-based decoder with SQL generation path history and table-aware column attention encoders. We evaluate SyntaxSQLNet on the Spider text-to-SQL task, which contains databases with multiple tables and complex SQL queries with multiple SQL clauses and nested queries. We use a database split setting where databases in the test set are unseen during training. Experimental results show that SyntaxSQLNet can handle a significantly greater number of complex SQL examples than prior work, outperforming the previous state-of-the-art model by 7.3% in exact matching accuracy. We also show that SyntaxSQLNet can further improve the performance by an additional 7.5% using a cross-domain augmentation method, resulting in a 14.8% improvement in total. To our knowledge, we are the first to study this complex and cross-domain text-to-SQL task.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Text-to-SQL | Spider 1.0 (dev) | Exact Match Accuracy24.8 | 92 | |
| Text-to-SQL | Spider 1.0 (test) | EM Acc (Overall)27.2 | 91 | |
| Context-dependent Text-to-SQL | SParC 1.0 (dev) | Question Match18.5 | 27 | |
| Context-dependent Text-to-SQL | CoSQL (dev) | Question Match15.1 | 22 | |
| Context-dependent Text-to-SQL | CoSQL (test) | Question Match14.1 | 12 | |
| Context-dependent Text-to-SQL | SParC (test) | Question Match20.2 | 12 | |
| Text-to-SQL (Component Matching) | Spider (test) | SELECT Component Error26.7 | 9 |