私は大文字と小文字を区別せずにDataMapperから結果を注文しようとしています。今、私はItem.all(:order => :artist)
のようなことをしています。 Item.all(:order => "LOWER(artist)")
してみましたが、LOWER(artist)
はItem
のプロパティではないというエラーが表示されます。 DataMapperでこれを行う良い方法はありますか?PostgresでDataMapperで大文字と小文字を区別しない順序を行うにはどうしたらいいですか?
3
A
答えて
2
DataMapperは、ordering句でraw SQLをサポートしていない可能性があります。 https://github.com/datamapper/dm-core/pull/11にはさらに詳しい情報があります。本当に必要な場合は、あなたのバージョンのDataMapperにそのパッチを適用することができます。
DataMapperがそれをサポートしていたとしても、注文を効率化するために、低い(アーティスト)のインデックスが必要です。
代わりにしたいのは、アーティスト列にpostgresql citextデータ型を使用することです。大文字と小文字を区別しない検索と並べ替えを提供します。 http://www.postgresql.org/docs/9.1/static/citext.html
もしあなたがpostgresql 9.1を使用するのに十分なことがあれば、以下は素晴らしいでしょう。 < 9.1を使用している場合は、citextモジュールを別の方法で読み込む必要があります.postgresqlのドキュメントにはその方法が表示されます。
create extension citext;
create table test (
name citext
);
insert into test values ('a'), ('b'), ('X'), ('m'), ('D');
select * from test order by name;
name
------
a
b
D
m
X
0
私は実際にdm-ar-findersを使用して終了しました。それはItem.find_by_sql("SELECT * FROM items ORDER BY LOWER(artist)")
のようなものを追加します。パフォーマンスを向上させるために、変更されている列にインデックスを追加してください。
関連する問題
- 1. Postgresの大文字と小文字を区別しないRailsでの検索
- 2. アンドロイドのormliteとsqliteで大文字と小文字を区別しない順
- 3. 大文字と小文字を区別するURL - どのように区別しないのですか?
- 4. XSLTで大文字小文字を区別しない
- 5. difflib.get_close_matches()で大文字小文字を区別しない
- 6. Rails 3 - 大文字と小文字を区別しないRansack&Postgresクエリ
- 7. PHP:大文字と小文字を区別しないパラメータ
- 8. 大文字と小文字を区別しないスペル
- 9. Drools:大文字と小文字を区別しない比較?
- 10. Djangoの大文字と小文字を区別しないURL?
- 11. 大文字と小文字を区別しないClearQuestクエリ
- 12. 大文字と小文字を区別しない場所
- 13. NSDictionaryの大文字と小文字を区別しないobjectForKey:
- 14. NSDictionaryの大文字と小文字を区別しないキー
- 15. データベースの大文字と小文字を区別しないインデックス?
- 16. XMLパス - 大文字と小文字を区別しない
- 17. nginxの大文字と小文字を区別しないURL
- 18. tkinterの大文字と小文字を区別しないバインド
- 19. 大文字と小文字を区別しないFlask-SQLAlchemyクエリ
- 20. 大文字と小文字を区別しないリスト
- 21. 大文字と小文字を区別しない#define
- 22. Hiberate:HQL大文字と小文字を区別しない検索
- 23. 大文字と小文字を区別しないXMLパーサC#
- 24. 大文字と小文字を区別しないCharfield djangoモデル
- 25. 大文字と小文字を区別しない置換
- 26. 大文字と小文字を区別するデータベースの照合順序が、大文字と小文字を区別しないSQLは、私はSSISを使用してプロジェクトを実行し、現在CS(大文字と小文字を区別)照合して新しいデータベースを作成しますが、すべてのクエリ、ストアドプロシージャなどは、大文字と小文字を区別しないで書かれてい
- 27. Pythonの大文字と小文字を区別しないファイル名ですか?
- 28. Ormliteでは、大文字と小文字を区別しないクエリを書く
- 29. ルビ文字列一致で大文字小文字を区別しない
- 30. Railsでは大文字と小文字を区別しないgroup_by?