- 単一のカラムでのソート:
データベースのテーブルを特定のカラムでソートするには、
order
メソッドを使用します。例えば、User
モデルのname
カラムで昇順にソートする場合、以下のようなコードを使用します。
const sortedUsers = await User.findAll({
order: [['name', 'ASC']]
});
ASC
は昇順を表し、DESC
を指定することで降順にソートすることもできます。
- 複数のカラムでのソート:
複数のカラムを使用してデータをソートする場合、
order
メソッド内で複数の配列を指定します。以下は、User
モデルのcreatedAt
カラムで昇順に、updatedAt
カラムで降順にソートする例です。
const sortedUsers = await User.findAll({
order: [['createdAt', 'ASC'], ['updatedAt', 'DESC']]
});
- 関連するモデルのプロパティを使用したソート:
関連するモデルのプロパティを使用してデータをソートする場合、
include
オプションを使用します。以下は、User
モデルと関連するPost
モデルのtitle
カラムで昇順にソートする例です。
const sortedUsers = await User.findAll({
include: [{
model: Post,
order: [['title', 'ASC']]
}]
});
これらはSequelizeを使用してデータをソートするための一般的な方法です。必要に応じて、他のカラムや関連モデルのプロパティを使用してソートすることもできます。