in asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java [54:79]
protected ADBResultSet executeGetCatalogsQuery() throws SQLException {
checkClosed();
StringBuilder sql = new StringBuilder(256);
populateQueryProlog(sql, "JDBC-GetCatalogs");
sql.append("select TABLE_CAT ");
sql.append("from Metadata.`Dataverse` ");
switch (connection.catalogDataverseMode) {
case CATALOG:
sql.append("let TABLE_CAT = DataverseName ");
break;
case CATALOG_SCHEMA:
sql.append("let name = decode_dataverse_name(DataverseName), ");
sql.append("TABLE_CAT = name[0] ");
sql.append("where (array_length(name) between 1 and 2) ");
sql.append("group by TABLE_CAT ");
break;
default:
throw new IllegalStateException();
}
sql.append("order by TABLE_CAT");
return executeQueryImpl(sql.toString(), null);
}