2017-10-01 11 views
1

データベースからデータを取得してテーブルに表示するために、コードネーム1を使用しています。コード名1行のデータベース印刷範囲

これは非常にうまく機能していますが、今は表に表示されている項目の数を制限する機能を追加しようとしています。そこに到達するには、データベースから選択した数の列を取得する必要があります。

残念ながら、一般的なjava sql操作は機能していないようです。以下は私がこれまで持っていたものです。すべてのアプローチではエラーは発生しませんが、希望する範囲も表示されません。選択肢を得る別の方法はおそらくArrayListでしょうが、これは比較的簡単で洗練された解決策であるように思われるので、私は直接アプローチをしたいと思います。

db = display.getInstance().openOrCreate("MyDB.db"); 
    db.execute("CREATE TABLE IF NOT EXISTS Termine (Date NOT NULL,Event NOT NULL, Date_String NOT NULL)"); 

    // prints the entire number of items from the database 
    cur = db.executeQuery("select * from (select * from Termine order by Date) where Date >= 5;"); 

    // doesn't print anything 
    cur = db.executeQuery("SELECT * from (select m.*, Date r from Termine m) where r > 4 and r < 10;"); 

    // doesn't print anything 
    cur = db.executeQuery("SELECT * from (select m.*, Date r from Termine m) where r BETWEEN 5 AND 10;"); 

    while (cur.next()) { 

     Row currentRow = cur.getRow(); 

     String event = currentRow.getString(1); 

     System.out.println(event); 

    } 

私のアプローチは実現可能ですか?どんな助けでも大歓迎です。

答えて

1

LIMIT SQLキーワードは、hereのように使用できます。

SELECT column_list FROM table LIMIT row_count OFFSET offset; 

良い習慣は「sqliteの」とあなたはすべてのプラットフォーム上などのモバイルSQLデータベースを探しているSQL機能は、いくつかの癖を持ってsqliteのに基づいているために検索することです。

+0

非常に多くの感謝、シャイ、簡単なソリューションと完璧に動作します。 – rainer

関連する問題