Skip to content
No results
We use cookies to ensure that we give you the best experience on our website.

# Get columns in select list

It’s quite simple and straightforward to get column information in select list by using a SQL Parser which maybe hard to achieve when using other tools like regex when query become more complex such as including nested subquery.

Below is a simple Java program that get all columns in select list:

    package demos.gettablecolumns;

    import gudusoft.gsqlparser.TCustomSqlStatement;
    import gudusoft.gsqlparser.EDbVendor;
    import gudusoft.gsqlparser.ESqlStatementType;
    import gudusoft.gsqlparser.TGSqlParser;
    import gudusoft.gsqlparser.nodes.TResultColumnList;
    import gudusoft.gsqlparser.stmt.TSelectSqlStatement;

    import java.io.File;

    public class getResultColumn  {

        public static void main(String args[])
         {
             TGSqlParser sqlparser = new TGSqlParser(EDbVendor.dbvoracle);
             sqlparser.sqltext  = "select a,b,c,DATETOSTRING(date_attr_name,'mm/dd/yyyy') from tbl_a";
             int ret = sqlparser.parse();
             if (ret == 0){
                 TSelectSqlStatement select = (TSelectSqlStatement)sqlparser.sqlstatements.get(0);
                 TResultColumnList columns = select.getResultColumnList();
                 for(int i = 0; i
    The output of is:

    a
    b
    c
    DATETOSTRING(date_attr_name,'mm/dd/yyyy')

    Download this demo: Java version