@Override public Node visitAtTimeZone(SqlBaseParser.AtTimeZoneContext context) { return new AtTimeZone( getLocation(context.AT()), (Expression) visit(context.valueExpression()), (Expression) visit(context.timeZoneSpecifier())); }
@Test public void testAtTimeZone() { assertStatement("SELECT timestamp '2012-10-31 01:00 UTC' AT TIME ZONE 'America/Los_Angeles'", new Query( Optional.empty(), new QuerySpecification( selectList( new AtTimeZone(new TimestampLiteral("2012-10-31 01:00 UTC"), new StringLiteral("America/Los_Angeles"))), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()), Optional.empty(), Optional.empty())); }
@Override public Node visitAtTimeZone(SqlBaseParser.AtTimeZoneContext context) { return new AtTimeZone( getLocation(context.AT()), (Expression) visit(context.valueExpression()), (Expression) visit(context.timeZoneSpecifier())); }
@Override public Node visitAtTimeZone(SqlBaseParser.AtTimeZoneContext context) { return new AtTimeZone( getLocation(context.AT()), (Expression) visit(context.valueExpression()), (Expression) visit(context.timeZoneSpecifier())); }
@Test public void testAtTimeZone() { assertStatement("SELECT timestamp '2012-10-31 01:00 UTC' AT TIME ZONE 'America/Los_Angeles'", new Query( Optional.empty(), new QuerySpecification( selectList( new AtTimeZone(new TimestampLiteral("2012-10-31 01:00 UTC"), new StringLiteral("America/Los_Angeles"))), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()), Optional.empty(), Optional.empty())); }
@Test public void testAtTimeZone() { assertStatement("SELECT timestamp '2012-10-31 01:00 UTC' AT TIME ZONE 'America/Los_Angeles'", new Query( Optional.empty(), new QuerySpecification( selectList( new AtTimeZone(new TimestampLiteral("2012-10-31 01:00 UTC"), new StringLiteral("America/Los_Angeles")) ), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), ImmutableList.of(), Optional.empty()), ImmutableList.<SortItem>of(), Optional.empty(), Optional.empty())); }