1

ソートせずにテーブルから最新の行を選択するにはどうすればよいですか?

これは、ID AUTO INCREMENT が続くためです...

c# asp.net を使用して選択しています... LIMIT 5 を使用してみましたが、エラー ページが表示されます..

rSQL = "select COUNT(*) from chatLog_db where sessionid='" + grpID + "' LIMIT 5";

この問題を解決するためのより良い方法はありますか?

助けていただければ幸いです。

4

4 に答える 4

0

あなたが試すことができます

SELECT * FROM chatLog_db WHERE sessionid > (SELECT MAX(sessionid) - 1 FROM chatLog_db);

あなたも試してみてください

SELECT * FROM chatLog_db WHERE sessionid > (SELECT MAX(sessionid) - 5 FROM chatLog_db);

max同様に使用することもできます

select * from chatLog_db where sessionid = (select max(sessionid) from chatLog_db);

そんな感じ。

表示データの順序が変更されると考えているためにクエリに使用していない場合は、必要に応じてデータにorder byも1つのトリックがあることをお伝えしますsort

クエリに order by を使用している場合でも、必要に応じてデータを並べ替えることができます。DataView では並べ替え機能も使用できるため、結果を DataView に入れ、必要に応じて並べ替えることができます。

Order Bylikeを使用して最新

select * from tablename order by columnname desc LIMIT 5;

それがうまくいくことを願っています。

于 2013-05-29T04:36:16.073 に答える
0

最新が最大IDを意味する場合

   select * from chatLog_db 
   where id = (select max(id) from chatLog_db);

編集

5 件のレコードを選択

   select * from chatLog_db 
   where id > (select max(id) - 5 from chatLog_db);
于 2013-05-29T04:37:02.163 に答える