| enterRule(ParseTreeListener) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| multipartIdentifier() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| identifierList() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| selectColumnClause() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| propertyClause() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| whereClause() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| COPY() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| INTO() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| FROM(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| LEFT_PAREN() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| RIGHT_PAREN() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| accept(ParseTreeVisitor) |   | 66% |   | 50% | 1 | 2 | 1 | 2 | 0 | 1 |
| FROM() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| exitRule(ParseTreeListener) |  | 100% |   | 50% | 1 | 2 | 0 | 2 | 0 | 1 |
| stageAndPattern() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| selectHint() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| DorisParser.CopyIntoContext(DorisParser.SupportedDmlStatementContext) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| SELECT() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |