[解決済み] Rails。ヌルの順番は最後に
2023-02-14 14:56:17
質問
私のRailsアプリで何度か問題に遭遇しましたが、他の人がどのように解決しているかを知りたいです。
私は値がオプションである特定のレコードを持っているので、いくつかのレコードはそのカラムの値を持ち、いくつかはnullです。
あるデータベースでそのカラムで並べ替えると、null が最初にソートされ、あるデータベースでは null が最後にソートされます。
たとえば、コレクションに属するかどうかわからない写真、つまり、いくつかの写真で
collection_id=nil
となっているものもあれば
collection_id=1
など。
もし私が
Photo.order('collection_id desc)
とすると、SQLiteでは最後にnullを取得しますが、PostgreSQLでは最初にnullを取得します。
これを処理して、どのデータベースでも一貫したパフォーマンスを得るための、素晴らしい標準的なRailsの方法はありますか?
どのように解決するのですか?
配列を足し合わせると、順序が保たれます。
@nonull = Photo.where("collection_id is not null").order("collection_id desc")
@yesnull = Photo.where("collection_id is null")
@wanted = @nonull+@yesnull
関連
-
[解決済み] Errno::EACCESS: パーミッションが拒否された @ dir_s_mkdir
-
[解決済み] Railsマイグレーションを利用してカラムをドロップする方法
-
[解決済み] Ruby: public static メソッドを作るには?
-
[解決済み] Railsコンソール:リロード!モデルファイルの変更が反映されない?考えられる理由は何でしょうか?
-
[解決済み] Ruby on Railsのデータベースをパージまたは再作成する
-
[解決済み] Ruby on Railsのマイグレーションでデータベースのカラムの名前を変更するにはどうすればよいですか?
-
[解決済み] カスタムオブジェクトを含むNSMutableArrayをソートするにはどうすればよいですか?
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] エラーが発生しました。pgsqlをrailsで動作させようとすると、Peer authentication failed for user "postgres" と表示されます。
-
[解決済み】Railsの認証トークンを理解する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】なぜRuby on Railsは、http://localhost:3000 の代わりに http://0.0.0.0:3000 を使用するのですか?
-
[解決済み] Railsサーバーがポートはすでに使用されていると言う、そのプロセスを殺すにはどうすればよいですか?
-
[解決済み] Rubyの文字列から日付への変換
-
[解決済み] Mac OS Xにhomebrewがインストールされているかどうかを確認する方法
-
[解決済み] Rails のインストールに失敗する: activesupport には Ruby のバージョン >= 2.2.2 が必要です。
-
[解決済み] railsでhidden fieldタグを使用する方法
-
[解決済み] "render :nothing => true" は空のプレーンテキストファイルを返すのですか?
-
[解決済み] Heroku Error R14 (Memory quota exceeded): How do I solve this?
-
[解決済み] 属性とカラムの違いは何ですか?
-
[解決済み] SQL 昇順ソート時に null 値を最後にする方法