public static String repairAliasesInWhereClause( AbstractWhereBuilder builder, List<Join> usedJoins, List<Join> redundantJoins ) { String whereClause = builder.getWhere().getSQL().toString(); for ( Join redundantJoin : redundantJoins ) { Join usedJoin = getEquivalentJoin( redundantJoin, usedJoins ); String usedAlias = usedJoin.getToTableAlias(); String redundantAlias = redundantJoin.getToTableAlias(); whereClause = whereClause.replace( redundantAlias, usedAlias ); } return whereClause; }
protected void getPSBody( AbstractWhereBuilder builder, StringBuilder getDatasetIDs ) { String rootTableAlias = builder.getAliasManager().getRootTableAlias(); getDatasetIDs.append( " FROM " ); getDatasetIDs.append( mainTable ); getDatasetIDs.append( " " ); getDatasetIDs.append( rootTableAlias ); for ( PropertyNameMapping mappedPropName : builder.getMappedPropertyNames() ) { for ( Join join : mappedPropName.getJoins() ) { getDatasetIDs.append( " LEFT OUTER JOIN " ); getDatasetIDs.append( join.getToTable() ); getDatasetIDs.append( ' ' ); getDatasetIDs.append( join.getToTableAlias() ); getDatasetIDs.append( " ON " ); getDatasetIDs.append( join.getSQLJoinCondition() ); } } if ( builder.getWhere() != null ) { getDatasetIDs.append( " WHERE " ); getDatasetIDs.append( builder.getWhere().getSQL() ); } }
OperatorFilter bboxFilter = new OperatorFilter( query.getPrefilterBBox() ); wb = getWhereBuilderBlob( bboxFilter, conn ); LOG.debug( "WHERE clause: " + wb.getWhere() ); if ( wb != null ) { sql.append( " AND " ); sql.append( wb.getWhere().getSQL() ); stmt.setShort( i++, getSchema().getFtId( ftName ) ); if ( wb != null ) { for ( SQLArgument o : wb.getWhere().getArguments() ) { o.setArgument( stmt, i++ );
} else { StringBuilder sql = new StringBuilder( "SELECT " ); if ( wb.getWhere() == null ) { sql.append( "COUNT(*) FROM " ); sql.append( ftMapping.getFtTable() ); LOG.debug( "WHERE clause: " + wb.getWhere() ); if ( wb.getWhere() != null ) { sql.append( " WHERE " ); sql.append( wb.getWhere().getSQL() ); if ( wb.getWhere() != null ) { for ( SQLArgument o : wb.getWhere().getArguments() ) { o.setArgument( stmt, i++ );
OperatorFilter bboxFilter = new OperatorFilter( query.getPrefilterBBox() ); wb = getWhereBuilderBlob( bboxFilter, conn ); LOG.debug( "WHERE clause: " + wb.getWhere() ); if ( wb != null ) { sql.append( " AND " ); sql.append( wb.getWhere().getSQL() ); for ( SQLArgument o : wb.getWhere().getArguments() ) { o.setArgument( stmt, i++ );
LOG.debug( "WHERE clause: " + wb.getWhere() ); LOG.debug( "ORDER BY clause: " + wb.getOrderBy() ); if ( wb.getWhere() != null ) { if ( blobMapping != null ) { sql.append( " AND " ); sql.append( " WHERE " ); sql.append( wb.getWhere().getSQL() ); if ( wb.getWhere() != null ) { for ( SQLArgument o : wb.getWhere().getArguments() ) { o.setArgument( stmt, i++ );