| 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 |