SQLite で抽出データを並び替え
SELECT * FROM テーブル名 ORDER BY フィールド1 DESC, フィールド2 DESC, フィールド3 ASC ;
上記のようにすることで、「テーブル名」という名前のテーブルの全てのデータを「フィールド1」の降順で並べ、「フィールド1」が同値の場合、次の「フィールド2」を降順に並べ、さらに「フィールド2」も同値の場合、「フィールド3」を基準に昇順に並び替えます。
ASC は結果が昇順に並びかえ、 DESC はそれが降順に並ぶかえることを表します。そのどちらも指定されていない場合、 ASC で並び替えられます。
SQLite でランダムにデータを抽出する
まず、SQLite でランダムにデータを取り出す方法
SELECT * FROM entry ORDER BY RANDOM();
SQLite で行数指定(LIMIT)でデータを抽出する
SELECT文では、WHERE句などを指定した場合でも条件に一致する全てのデータを取得します。この取得する件数を制限したい場合にはLIMIT句を使います。書式は以下の通りです。
SELECT カラム名, ... FROM テーブル名 LIMIT 行数;
…
define( “ONE_DAY_SEC”, 24 * 3600 );
// 日付けの差分をとる関数
function dateDiff( $date1, $date2 ) {
return ( strtotime( $date1 ) – strtotime( $date2 ) ) / ONE_DAY_SEC;
}
// 実行サンプル
$date1 = date(‘Y/m/d’);
$date2 = “2010/06/01”;
$result = (dateDiff( $date1, $date2 )+1);
これで$resultには、2010/06/01 から 現在の日付までの経過日数を求めることが出来る。
参考サイト:http://q.hatena.ne.jp/1169605670
この投稿へのコメント
コメントはまだありません。