This is an automated email from the ASF dual-hosted git repository. yaqian pushed a commit to branch mdx-query-demo in repository https://gitbox.apache.org/repos/asf/kylin.git
commit c97d174517ed1c7aef8299f867927e5552527a65 Author: yaqian.zhang <598593...@qq.com> AuthorDate: Mon Mar 28 19:06:30 2022 +0800 MDX query demo --- .../mdxquerydemo/MdxQueryDemoApplication.java | 47 ++++++++++++++++------ 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/src/main/java/io/kyligence/mdxquerydemo/MdxQueryDemoApplication.java b/src/main/java/io/kyligence/mdxquerydemo/MdxQueryDemoApplication.java index a3c0eb2..96f0142 100644 --- a/src/main/java/io/kyligence/mdxquerydemo/MdxQueryDemoApplication.java +++ b/src/main/java/io/kyligence/mdxquerydemo/MdxQueryDemoApplication.java @@ -9,27 +9,48 @@ import java.sql.DriverManager; public class MdxQueryDemoApplication { public static void main(String[] args) throws Exception { + String mdx_ip = args.length != 0 ? args[0] : "localhost"; Class.forName("org.olap4j.driver.xmla.XmlaOlap4jDriver"); Connection connection = DriverManager.getConnection( - "jdbc:xmla:Server=http://localhost:7080/mdx/xmla/learn_kylin?username=ADMIN&password=KYLIN"); + "jdbc:xmla:Server=http://" + mdx_ip + ":7080/mdx/xmla/test_covid_project?username=ADMIN&password=KYLIN"); OlapConnection olapConnection = connection.unwrap(OlapConnection.class); OlapStatement statement = olapConnection.createStatement(); - String mdx = "SELECT NON EMPTY Hierarchize(AddCalculatedMembers({DrilldownLevel({[KYLIN_COUNTRY].[NAME].[All]})})) " + - "DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS FROM [test001] WHERE ([Measures].[SUM_PRICE]) " + - "CELL PROPERTIES VALUE, FORMAT_STRING, LANGUAGE, BACK_COLOR, FORE_COLOR, FONT_FLAGS"; + String mdx = "SELECT\n" + + "{[Measures].DefaultMember} DIMENSION PROPERTIES [MEMBER_UNIQUE_NAME],[MEMBER_ORDINAL],[MEMBER_CAPTION] ON COLUMNS,\n" + + "NON EMPTY CROSSJOIN(\n" + + " [DROPOFF_NEWYORK_ZONE].[BOROUGH].[BOROUGH].AllMembers,\n" + + " [PICKUP_NEWYORK_ZONE].[BOROUGH].[BOROUGH].AllMembers) DIMENSION PROPERTIES [MEMBER_UNIQUE_NAME],[MEMBER_ORDINAL],[MEMBER_CAPTION] ON ROWS\n" + + "FROM [nyc_taxi_coivd_dataset]"; CellSet cellSet = statement.executeOlapQuery(mdx); - for (Position column : cellSet.getAxes().get(0)) { - for (Member member : column.getMembers()) { - System.out.println(member.getUniqueName()); + + boolean flag = false; + for (Position row : cellSet.getAxes().get(1)) { + for (Position column : cellSet.getAxes().get(0)) { + if (!flag) { + flag = true; + for (Member member : row.getMembers()) { + String name = member.getUniqueName(); + String[] s = name.split("\\."); + if (s.length > 1) { + name = s[0].concat(s[1]); + } + System.out.print(name); + System.out.print(" "); + } + for (Member member : column.getMembers()) { + System.out.println(member.getUniqueName()); + System.out.println("-------------------------------------------------------------------------"); + } + } + for (Member member : row.getMembers()) { + System.out.print(member.getCaption()); + System.out.print(" "); + } + final Cell cell = cellSet.getCell(column, row); + System.out.println(cell.getFormattedValue()); } - final Cell cell = cellSet.getCell(column); - System.out.println(cell.getValue()); - System.out.println(); } } - - - }