package org.rakam.analysis;
import com.facebook.presto.sql.RakamSqlFormatter;
import com.facebook.presto.sql.parser.IdentifierSymbol;
import com.facebook.presto.sql.parser.SqlParser;
import com.facebook.presto.sql.parser.SqlParserOptions;
import com.facebook.presto.sql.tree.QualifiedName;
import com.facebook.presto.sql.tree.Statement;
import org.testng.annotations.Test;
import java.util.function.Function;
public class TestQueryMap
{
@Test
public void testName() throws Exception {
String sql = "select selami:timestamp, melami:varchar from deneme where ali:timestamp is not null and veli is null group by demo";
SqlParserOptions options = new SqlParserOptions().allowIdentifierSymbol(IdentifierSymbol.COLON);
Statement statement = new SqlParser(options).createStatement(sql);
String s = RakamSqlFormatter.formatSql(statement,
name -> String.format("(SELECT * FROM events WHERE collection_name = '%s')", name.toString()),
name -> "\"$data\"['" + name + "']", '"');
System.out.println(s);
}
}