- Joined
- Oct 26, 2020
- Messages
- 91
This is the Official User Community for GE's GeoSpatial Analysis products. By registering with us, you'll be able to discuss, share and private message with other members of our Community.
Registration is currently only allowed with a personalized invitation code, which you might have received previously. If you haven't got one:
please get in touch with your GE contact person or your regional moderator(s): see FAQ.
Hi Björn,
It seems like you want to do a kind of "group by" to eliminate the identical records. There are several ways of doing this, but it depends where the duplication is originated from.
If it is created in a join (and you know for sure that the records are identical, because this option will take the first record from the two) you can use the Lookup Type Lookup - Single Record (forced) from the Properties tab.
If it is already in your source and you can access it using SQL language, you can create a SQL based source collection where you perform the "group by" to eliminate the duplicate.
Kind regards,
Joery Korobejnik
Hi Björn,
Thank you, it is much clearer now what you want to accomplish. I do have some examples of similar cases but I solved it with business collections (via self join) and not the analyses blocks. I will discuss this with a couple of my collogues to see if the method can be used in this case without the risk of not having all the data in the result collection.
By the wat what is your data source?
Hi JoeryHi Björn,
That's unfortunately not something I can decide, but you can log it as a request via the GSA support system. There are also ways of doing it in GSA Professional but it is more a trick than a feature. Lets explore both ways with the current product and see what solves your challenge.
Joery
Hi Björn,
We have investigated multiple options with Oracle SQL statements and it seems that the window functions / analytic functions can provide the unique result you are looking for. Because of the duplicates you need some form of aggregation in your result.
Example we made by using an address table with duplicate street names in different municipalities:
SELECT STREET_NAME, MUNICIPALITY_NAME, Rank_in_street_group
FROM (SELECT STREET_NAME, MUNICIPALITY_NAME,
ROW_NUMBER() OVER(PARTITION by a.STREET_NAME ORDER BY 1) as Rank_in_street_group
FROM ADDRESSPORTAL.ADDRESS a)
WHERE Rank_in_street_group = 1
So to summarize:
1. Right click on the Oracle Feature Source and start the Query Tool
2. Prepare the SQL statement to yield the correct result (you can also perform joins with different tables here)
3. Save the query as a collection (it will become available in the feature source overview as a Table that you can promote towards a Business Collection)
4. Now you can use it as any other table within the product (also in your GSA Professional edition)
If you need any help getting the SQL statement set up please share your results here so that we can think with you.
Kind regards,
Joery
GSA Community is the online community for GE’s GeoSpatial Analysis customers and users. It is the right place to engage in discussions about GSA products, configurations, customizations and more. It brings together many highly skilled professionals, ready to share their GSA knowledge with others. Please note that GSA Community is not a replacement for the regular GE support channel.