2017-06-26 7 views
1

私のSQLテーブルのように:最小値はどのようにして成功するのですか?

enter image description here

私は最大値と最小値を取得したい、私はこのような方法を試してみてください。

//get the highest value 
public String getMax(String column_name) {// use the data type of the column 
    SQLiteDatabase db = this.getWritableDatabase(); 
    Cursor cursor = db.query(TABLE_CONTACTS, new String[]{"MAX(" +column_name + ") AS MAX"}, null, null, null, null, null); 

    cursor.moveToFirst(); // to move the cursor to first record 
    int index = cursor.getColumnIndex("MAX"); 
    String data = cursor.getString(index);// use the data type of the column or use String itself you can parse it 

    db.close(); 

    System.out.println("maxData:"+data); 
    return data; 
} 

//get the minimum value 
public String getMin(String column_name) {// use the data type of the column 
    SQLiteDatabase db = this.getWritableDatabase(); 
    Cursor cursor = db.query(TABLE_CONTACTS, new String[]{"MIN(" +column_name + ") AS MIN"}, null, null, null, null, null); 

    cursor.moveToFirst(); // to move the cursor to first record 
    int index = cursor.getColumnIndex("MIN"); 
    String data = cursor.getString(index);// use the data type of the column or use String itself you can parse it 

    db.close(); 

    System.out.println("minData:"+data); 
    return data; 
} 

と私は6にする方法とsetTextを呼び出しますTextView

結果は、最大値が良好であること、問題が最小値であること、最小値の何らかの種類がヌルであることを示しています。

06-26 09:43:45.115 22517-22517/? I/System.out: minData:71 
06-26 09:43:45.116 22517-22517/? I/System.out: minData:112 
06-26 09:43:45.118 22517-22517/? I/System.out: minData: 
06-26 09:43:45.119 22517-22517/? I/System.out: minData: 
06-26 09:43:45.121 22517-22517/? I/System.out: minData: 
06-26 09:43:45.122 22517-22517/? I/System.out: minData: 
06-26 09:43:45.125 22517-22517/? I/System.out: maxData:98 
06-26 09:43:45.126 22517-22517/? I/System.out: maxData:99 
06-26 09:43:45.128 22517-22517/? I/System.out: maxData:96 
06-26 09:43:45.129 22517-22517/? I/System.out: maxData:142 
06-26 09:43:45.131 22517-22517/? I/System.out: maxData:98 
06-26 09:43:45.132 22517-22517/? I/System.out: maxData:151 

は私が bNoon aNoon bNight aNightの最小値は93 122 95 132されるべきだと思うが、彼らは今ではnullです:

private void setMinMaxValue(){ 
    minBeMorning.setText(db.getMin("bMorning")); 
    minAfMorning.setText(db.getMin("aMorning")); 
    minBeNoon.setText(db.getMin("bNoon")); 
    minAfNoon.setText(db.getMin("aNoon")); 
    minBeNight.setText(db.getMin("bNight")); 
    minAfNight.setText(db.getMin("aNight")); 

    maxBeMorning.setText(db.getMax("bMorning")); 
    maxAfMorning.setText(db.getMax("aMorning")); 
    maxBeNoon.setText(db.getMax("bNoon")); 
    maxAfNoon.setText(db.getMax("aNoon")); 
    maxBeNight.setText(db.getMax("bNight")); 
    maxAfNight.setText(db.getMax("aNight")); 
} 

は、ここに私のログの猫です。

何人かが私にそれを見逃していることを教えてくれる、ありがとうございます。

答えて

1

たぶん、あなたはINTEGERに価値とあなたのコードを試してみてくださいTEXT 変化としてbNoonaNoonbNightaNightを定義しました。

+0

あなたの提案に感謝、それは問題です、私は今、あなたの助けの男のおかげでそれを修正しています –

関連する問題