Skip to main content
Question

How to update data in Database using last max value for each item

  • July 19, 2021
  • 1 reply
  • 145 views

nedwaterman
Contributor
Forum|alt.badge.img+9

HI there,

I have access to an API that returns flow data. The data is structured with a serial id (unique to each logger), ID (sequential, but only to each logger) and the data value (float).

The API would run every 12 hours and just would return the last 12 hours of data with overlaps. The API creators have suggested that by fetching the max ID for each serial number in the existing data I should be able to return the data from the api that doesn't already exist. There is no provision in the API to pass these values as a parameter so will be using FME to achieve this.

I could output the data from the api into a holding table and use a FeatureJoiner to the existing data so insert the new rows, but the static table will grow exponentially and I can see this becoming a huge problem in time.

Is there a way to grab the max ID for each serial number from the static table, fire this against the holding table and grab only the new values which are greater than the max(ID) for each serial no?

Cheers

Neil

1 reply

jkr_wrk
Influencer
Forum|alt.badge.img+28
  • July 19, 2021

You could use the SQLExecutor to request the max(ID) from the database.

MySQL: select max(ID) from yourTable group by serial_id

 

Or write the last ID to a separate Table?


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings