0

MySQL でこれに対するいくつかの解決策を見ましたが、SQLite では何も見つからないようです。データベース内の最新の 7 つのエントリの値を取得しようとしています。それらを日付順に並べ替える方法は知っていますが、何らかの理由で、指定された数のそれらを返すための構文が見つかりません。
これは、JDBC を使用したクエリです。

PreparedStatement get_recent_id = conn.prepareStatement("SELECT * FROM workout_log ORDER BY t desc");

SELECT 7 *これは注文したものを返しますが、 ....うまく いくと思っていましたが、これは私が得るエラーですException in thread "main" java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (near "FROM": syntax error) at org.sqlite.DB.newSQLException(DB.java:383) at org.sqlite.DB.newSQLException(DB.java:387) at org.sqlite.DB.throwex(DB.java:374) at org.sqlite.NativeDB.prepare(Native Method) at org.sqlite.DB.prepare(DB.java:123) at org.sqlite.PrepStmt.<init>(PrepStmt.java:42) at org.sqlite.Conn.prepareStatement(Conn.java:404) at org.sqlite.Conn.prepareStatement(Conn.java:399) at org.sqlite.Conn.prepareStatement(Conn.java:383) at WeeklyReport.main(WeeklyReport.java:38)

4

3 に答える 3

2
SELECT * FROM workout_log ORDER BY t desc Limit 7;

*また、使用すると、下流でいくつかの問題が発生する可能性があることに注意してください。列の順序を変更したり、新しい列を追加したりした場合はどうなりますか? フィールドをリストすることを考えてください。

于 2013-05-11T02:01:24.940 に答える
0

追加のみlimit 0,7

クエリは次のとおりです:-

SELECT * FROM workout_log ORDER BY t desc limit 0,7;
于 2013-05-11T02:11:20.290 に答える