В моем приложении Rails я столкнулся с проблемой пару раз, чтобы узнать, как другие люди решают:
У меня есть определенные записи, где значение является необязательным, поэтому некоторые записи имеют значение, а некоторые - для этого столбца.
Если я заказываю по этому столбцу в некоторых базах данных сначала сортировку нулей, а в некоторых базах - сортировку нулей.
Например, у меня есть Фотографии, которые могут или не могут принадлежать коллекции, т.е. есть некоторые фотографии, где collection_id=nil
и некоторые, где collection_id=1
и т.д.
Если я делаю Photo.order('collection_id desc)
, то на SQLite я получаю нулевые значения, но на PostgreSQL я сначала получаю нули.
Есть ли хороший стандартный Rails способ справиться с этим и получить согласованную производительность в любой базе данных?