SQLiteにて、MAX文やCOUNT文を使いたいのですが、
どのようにすれば、その結果を得られますか?
現状では、下のコードにてCOUNT数は得ていますが、
そうではなく、SQL文を使って、
・SELECT COUNT(ID) FROM TEST_TABLE;
・SELECT MAX(ID) FROM TEST_TABLE;
で得た値を表示させたいです。
よろしくお願いいたします。
var
sldb: TSQLiteDatabase;
sltb: TSQLIteTable;
begin
sldb := TSQLiteDatabase.Create('test.db');
try
sldb.BeginTransaction;
sltb := slDb.GetTable('SELECT ID FROM TEST_TABLE;');
//カウント表示
ShowMessage('COUNT='+IntToStr(sltb.Count));
//フィールドの値表示
for i := 0 to sltb.Count - 1 do
begin
ShowMessage(sltb.FieldAsString(sltb.FieldIndex['ID']));
end;
finally
sldb.Free;
end;
end;
中国のサイトで答えが見つかりました。
sltb := sldb.GetTable('SELECT MAX(ID) as maxValue FROM TEST_TABLE;');
ShowMessage(IntToStr(sltb.FieldAsInteger(sltb.FieldIndex['maxValue']) + 1));
ありがとうございました。
ツイート | ![]() |