Skip to content

Commit abbf7f6

Browse files
committed
Fix projection aliases.
1 parent 24548ef commit abbf7f6

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

internal/query/query.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -231,16 +231,23 @@ func (cl *BaseCypherVisitor) VisitOC_Skip(c *parser.OC_SkipContext) interface{}
231231
func (cl *BaseCypherVisitor) VisitOC_ProjectionItems(c *parser.OC_ProjectionItemsContext) interface{} {
232232
items := make([]QueryProjectionItem, 0)
233233
for i := range c.AllOC_ProjectionItem() {
234-
item := QueryProjectionItem{}
235-
item.Expression = c.OC_ProjectionItem(i).Accept(cl).(QueryExpression)
236-
item.Alias = c.OC_ProjectionItem(i).GetText()
234+
item := c.OC_ProjectionItem(i).Accept(cl).(QueryProjectionItem)
237235
items = append(items, item)
238236
}
239237
return items
240238
}
241239

242240
func (cl *BaseCypherVisitor) VisitOC_ProjectionItem(c *parser.OC_ProjectionItemContext) interface{} {
243-
return c.OC_Expression().Accept(cl)
241+
item := QueryProjectionItem{}
242+
243+
item.Expression = c.OC_Expression().Accept(cl).(QueryExpression)
244+
245+
if c.OC_Variable() != nil {
246+
item.Alias = c.OC_Variable().Accept(cl).(string)
247+
} else {
248+
item.Alias = c.GetText()
249+
}
250+
return item
244251
}
245252

246253
func (cl *BaseCypherVisitor) VisitOC_ReadingClause(c *parser.OC_ReadingClauseContext) interface{} {

0 commit comments

Comments
 (0)