@@ -108,9 +108,9 @@ func EmptyTable(dataSource *utils.DbAndSchema, tableName string) {
108
108
109
109
func GetLastCohortId () int {
110
110
dataSource := db .GetAtlasDB ()
111
- var lastCohortDefinition models. CohortDefinition
112
- dataSource .Db .Select ( "id" ). Order ( "id DESC" ). First ( & lastCohortDefinition )
113
- return lastCohortDefinition . Id
111
+ var lastCohortDefinitionId int
112
+ dataSource .Db .Raw ( "SELECT MAX(id) FROM " + dataSource . Schema + ".cohort_definition" ). Scan ( & lastCohortDefinitionId )
113
+ return lastCohortDefinitionId
114
114
}
115
115
116
116
func GetNextCohortId () int {
@@ -123,25 +123,25 @@ func GetNextCohortId() int {
123
123
124
124
func GetLastConceptId (sourceId int ) int64 {
125
125
dataSource := GetOmopDataSourceForSourceId (sourceId )
126
- var lastConcept models. Concept
127
- dataSource .Db .Select ( " concept_id" ). Order ( "concept_id DESC" ). First ( & lastConcept )
126
+ var lastConceptId int64
127
+ dataSource .Db .Raw ( "SELECT MAX( concept_id) FROM " + dataSource . Schema + ".concept" ). Scan ( & lastConceptId )
128
128
log .Printf ("Last concept id found %d" ,
129
- lastConcept . ConceptId )
130
- return lastConcept . ConceptId
129
+ lastConceptId )
130
+ return lastConceptId
131
131
}
132
132
133
133
func GetLastObservationId (sourceId int ) int64 {
134
134
dataSource := GetOmopDataSourceForSourceId (sourceId )
135
- var lastObservation models. Observation
136
- dataSource .Db .Select ( " observation_id" ). Order ( "observation_id DESC" ). First ( & lastObservation )
137
- return lastObservation . ObservationId
135
+ var lastObservationId int64
136
+ dataSource .Db .Raw ( "SELECT MAX( observation_id) FROM " + dataSource . Schema + ".observation" ). Scan ( & lastObservationId )
137
+ return lastObservationId
138
138
}
139
139
140
140
func GetLastPersonId (sourceId int ) int64 {
141
141
dataSource := GetOmopDataSourceForSourceId (sourceId )
142
- var lastPerson models. Person
143
- dataSource .Db .Select ( " person_id" ). Order ( "person_id DESC" ). First ( & lastPerson )
144
- return lastPerson . PersonId
142
+ var lastPersonId int64
143
+ dataSource .Db .Raw ( "SELECT MAX( person_id) FROM " + dataSource . Schema + ".person" ). Scan ( & lastPersonId )
144
+ return lastPersonId
145
145
}
146
146
147
147
func GetOmopDataSource () * utils.DbAndSchema {
0 commit comments