質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

Q&A

解決済

1回答

562閲覧

特定のデータだけをorderメソッドで並び替えることは可能なのか

jqk

総合スコア26

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

0グッド

0クリップ

投稿2020/12/11 03:18

編集2020/12/11 03:37

取得した特定のデータだけを取得元の全体のデータの一番後ろに並び替えたいです。

例えばStoreが5店舗あったとして、
閉店してるStoreが2つあった場合に、
この2つの閉店してるStoreをStoreテーブルの一番下に配置したい。
下記のようなイメージで配置したいです。

[元のテーブル] id  status(閉店してるかどうかを判断するためのカラム) 1  閉店 2  開店 3  閉店 4  開店 5  開店 ↓ ↓ [並び替え後のテーブル] id  status 1  開店 2  開店 3  開店 4  閉店 5  閉店

railsにはorderメソッドがありますが、
こちらは昇順、降順だけを指定できると思ってます。
他の使い方ができるのでしょうか?または別のメソッドや方法はあるのでしょうか?
ご教授頂ければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こちらは昇順、降順だけを指定できると思ってます。

status列で昇順か降順かに並べ替えれば、「開店」と「閉店」で順番が付いて、意図通りに並ぶかと思うのですが、そういうことではないのでしょうか?

投稿2020/12/11 03:28

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jqk

2020/12/11 03:35

分かりづらくてすいません! 例えば、idカラムが1の店は閉店、2は開店、3は閉店、4は開店、5は開店。 この場合id1,3を取得して、この1と3だけをテーブルの後ろに配置したいという意味です。 求めてる答えと違ってたらすいません!
maisumakun

2020/12/11 03:37 編集

> この場合id1,3を取得して、この1と3だけをテーブルの後ろに配置したいという意味です。 元の回答の通り、statusにorderをかければ、(ascかdescかは要確認ですが)「開店→閉店の順に並ぶ」ようにすることができます。
jqk

2020/12/11 03:57

orderメソッドってジャンル別に分けてから、並び替えてくれるんですね! ありがとうございます!勉強になりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問