Android SQLite querying max/min values -


in android application i'm using sqlite database table called "event_table" looks this: enter image description here

my goal find best time or distance each athlete_id each event participate in.

my querying code looks this:

trackandfielddbhelper mopenhelper = new trackandfielddbhelper(this); sqlitedatabase db = mopenhelper.getreadabledatabase();  boolean istimedevent = event.iseventtimed(this, event);  string rawquery = "select * event_table inner join (select athlete_id " + (istimedevent ? ", min(" : ", max(") + "sort_result) minormaxresult event_table group athlete_id) joinedtable on event_table.athlete_id = joinedtable.athlete_id , event_table.sort_result = joinedtable.minormaxresult";  cursor data = db.rawquery(rawquery, null);     if (data != null) {         if (data.movetofirst()) {             {                 long athleteid = data.getlong(data.getcolumnindexorthrow(trackandfieldcontract.evententry.column_athlete_id));                 string event = data.getstring(data.getcolumnindexorthrow(trackandfieldcontract.evententry.column_event));                 string result = data.getstring(data.getcolumnindexorthrow(trackandfieldcontract.evententry.column_result));                 log.d(tag, "athlete id: " + athleteid + " event: " + event + " result: " + result);             } while (data.movetonext());         }         data.close();     }     db.close();  } 

the results of log this:

athlete id: 4 event: 3000m result: 12:08.24

athlete id: 5 event: 3000m result: 13:47.68

athlete id: 1 event: discus result: 130-00

athlete id: 2 event: discus result: 114-00

athlete id: 3 event: 400m result: 61.00

athlete id: 6 event: 400m result: 61.50

for 3 events (3000m, discus, 400m) , athlete_id's result values correct. correct max or min. question happened other events? (100m, 100h, 1500m, shot put) shouldn't query include events well? haven't been able figure out why. i've tried add clause missing events , nothing. help.


Comments

Popular posts from this blog

inversion of control - Autofac named registration constructor injection -

verilog - Systemverilog dynamic casting issues -

ios - Change Storyboard View using Seague -