@Test
  public void testWithClause() throws ParseException {
    parse("with q1 as ( select key from `c/b/o_t1` where key = '1')\n" +
        "select count(*) from q1");
    parse("with q1 as ( select key,c_int from `c/b/o_t1`  where key = '1')\n" +
        "select * from q1");
    parse("with q1 as ( select `c/b/o_t1`.c_int c_int from q2 join `c/b/o_t1` where q2.c_int = `c/b/o_t1`.c_int  and `c/b/o_t1`.dt='2014'),\n" +
        "q2 as ( select c_int,c_boolean from v1_n7  where value = '1' or dt = '14')\n" +
        "select count(*) from q1 join q2 join v4_n0 on q1.c_int = q2.c_int and v4_n0.c_int = q2.c_int");
  }
Parser tests special character in table names.
parser/src/test/org/apache/hadoop/hive/ql/parse/TestSpecialCharacterInTableNames.java