code: public String explain(Where where) throws SqlParseException {
          List<String> codes = new ArrayList<String>();
          while (where.getWheres().size() == 1) {
              where = where.getWheres().getFirst();
          }
          explainWhere(codes, where);
          String relation = where.getConn().name().equals("AND") ? " && " : " || ";
          return Joiner.on(relation).join(codes);
      }
docs: zhongshu-comment 这个方法应该设为private比较合适，因为只在上文的parse()方法中被调用了
  zhongshu-comment 将case when的各种条件判断转换为script的if-else判断，举例如下
  case when：
  CASE
  WHEN platform_id = 'PC' AND os NOT IN ('全部') THEN 'unknown'
  ELSE os
  
  script的if-else：
  将上文case when例子中的WHEN platform_id = 'PC' AND os NOT IN ('全部') THEN 'unknown' 解析成如下的script：
  (doc['platform_id'].value=='PC') && (doc['os'].value != '全部' )
  @param where
  @return
  @throws SqlParseException