Mysqlでは、FIND_IN_SET
がセット内の値を見つけるために使用されます。私はFIND_IN_SET
をSQLiteで試しましたが、SQLキーワードではありません。私はグーグルではあるが、私は答えを得ていない。もし誰かが知っていれば、FIND_IN_SET
の代わりにSQLiteを教えてください。SQLiteのFIND_IN_SETの代わりに?
答えて
あなたは、あなたがLIKE
句を使用することができ、むしろインデックスよりちょうど真/偽の値が必要な場合:
(',' || column_name || ',') LIKE '%,value,%'
これを使ってインデックス値を取得できますか?これは真偽値だけを取得することですか? –
インデックスからインデックス値を取得するクエリを教えてもらえますか? –
@ Balaji53444はい、true/false値のみを返します。 – Karolis
を私たちは休止状態criteareaに変更のようなクエリを書くことができます
私の古いクエリ
select * FROM game_detail WHERE content_id=176 and FIND_IN_SET(12,group_master_id)
新しいクエリ
select *
FROM game_detail
WHERE content_id=176
and (group_master_id LIKE '%12,%'|| group_master_id LIKE '%,12,'|| group_master_id LIKE '%12')
これは私の古いクエリ
文字列のクエリ= content_masterから」 + "をa.content_id、a.content_name、a.image_name、a.image_path、a.rating、d.content_type_nameを選択" で、Bをcategory_content_mapping、 game_detailのC、content_type_masterのD "+ "" + "ここでa.content_id = b.content_id" + "とc.content_id = a.content_id" + "とa.content_type_id = d.content_type_id" +" とa.is_active = 'Y'、b.is_active = 'Y'、およびb.is_active = ''は、とc.is_active = 'Y' " + "b.content_mapping_idによる注文DESC制限0,3"; FIND_IN_SET
Session session=new Configuration().configure().buildSessionFactory().openSession();
Criteria criteria=session.createCriteria(ContentMaster.class);
criteria.setFetchMode("CategoryContentMapping", FetchMode.JOIN);
criteria.setFetchMode("GameDetail", FetchMode.JOIN);
criteria.createAlias("categoryContentMappings","cat");
criteria.createAlias("contentTypeMaster", "ctm");
criteria.createAlias("gameDetails","game");
criteria.add(Restrictions.eq("cat.categoryMaster.categoryMasterId", 9));
criteria.add(Restrictions.disjunction()
.add(Restrictions.like("game.groupMasterId","%12,%"))
.add(Restrictions.like("game.groupMasterId","%,12,%"))
.add(Restrictions.like("game.groupMasterId","%12%")));
criteria.add(Restrictions.eq("isActive", "y"));
criteria.add(Restrictions.eq("cat.isActive", "y"));
criteria.add(Restrictions.eq("ctm.isActive", "y"));
criteria.addOrder(Order.desc("cat.contentMappingId"));
- 1. fopen()の代わりにSqlite?
- 2. 代わりにSQLite - C#サーバー
- 3. sqliteの代わりにオフラインで最初のデータベース
- 4. SQLiteとの関係を使用する代わりに
- 5. SQLiteまたはローカルデータベースの代わりにMicrosoft Accessデータベース
- 6. の代わりに
- 7. SSOの代わりにSelenium Webdriverの代わりに
- 8. MySQLの代わりにCOUNT(*)OVER(PARTITION BY mct.MasterTableid)の代わりに
- 9. java印刷の代わりに0の代わりに
- 10. asp.netの代わりにasp.netの代わりにmvc
- 11. 、代わりの
- 12. 現代のフレームの代わりに?
- 13. 古代の "マーキー"タグの代わりに?
- 14. 主キー(SQLite)の代わりにROWIDに頼ることの短所
- 15. divの代わりにdivの上にお互いの代わりに
- 16. 代わりに、コードの下
- 17. ポップアップメニューの代わりにプレハニカム
- 18. デバッグの代わりにログ?
- 19. 注釈の代わりに?
- 20. ボタンの代わりにピッカー
- 21. オペレータの代わりにmysql
- 22. Application.DoEvents()の代わりに
- 23. 条件の代わりに
- 24. Capybaraの代わりにSpecflow
- 25. ipxthonの代わりにatexit
- 26. 代わりにスクロールページのマウススクロール
- 27. マイクロソフトセキュリティアプリケーションブロックの代わりに?
- 28. FormsAuthentication.HashPasswordForStoringInConfigFileの代わりにドロップ?
- 29. ShowDialog()の代わりに "Include"
- 30. jsonの代わりにXML
の代替などの休止状態、使用中の
基準は、あなたはそれはあなたのデータベース構造に問題があることを意味します)(FIND_IN_SETを使用する必要性を感じるとき。テーブルを正規化してみてください。 –
@nick FIND_IN_SET()は単なる関数であり、多くのシナリオで使用できます。 – Karolis