private String compareFieldWithLiteral(RexNode left, RexNode right, List<String> fieldNames) { if (left.isA(SqlKind.CAST)) { left = ((RexCall) left).getOperands().get(0); } if (left.isA(SqlKind.INPUT_REF) && right.isA(SqlKind.LITERAL)) { final RexInputRef left1 = (RexInputRef) left; String name = fieldNames.get(left1.getIndex()); return name; } else { return null; } }