MySqlクエリに関して1つのヘルプが必要です。
私のテーブルはこんな感じ
_id studid recid arrival
834 29 436 12:04
835 29 437 12:19
836 29 438 12:35
837 29 439 12:43
次に、とのIDを比較する必要がありrecid 436
ますrecid 439
まさにこのように
_id(recid(436)) < _id(recid(439)) // 834 < 837 (true)
これについてはクエリが必要です。
私はこのように試しました。
public boolean Check(String tid,String src,String dest)
{
Cursor c1 = this.db.query(TABLE_NAME_2, new String[] { "_id" },
"_studId = \"" + src +"\" AND _recId = \"" + tid+"\"" , null, null, null, null);
Cursor c2 = this.db.query(TABLE_NAME_2, new String[] { "_id" },
"_studId = \"" + dest +"\" AND _recId = \"" + tid+"\"" , null, null, null, null);
int srcid = 0;
int destid = 0;
if (c1.moveToFirst())
{
do {
srcid = Integer.parseInt(c1.getString(0));
} while (c1.moveToNext());
}
if (c1 != null && !c1.isClosed()) {
c1.close();
}
if (c2.moveToFirst())
{
do {
destid = Integer.parseInt(c2.getString(0));
} while (c2.moveToNext());
}
if (c2 != null && !c2.isClosed()) {
c1.close();
}
if(srcid < destid)
{
return true;
}
else
{
return false;
}
}
このようにチェックすると正しい結果が返されます
System.out.println(dh.Check("29", "436", "439")); // returns true.
しかし、複数のレコードがあるので、正しい手順ではないと思います。したがって、50のレコードがある場合、この関数を50回実行する必要があります。だから私はこれのための簡単なクエリが必要です。
誰かがこのような経験をしているなら。お願い助けて..
前もって感謝します。