Mysql クエリする方法はありますか? たとえば、文字列 '3,5' は文字列 '3,4,5,2' の中にあります
おそらく状況は次のようになります
ユーザーは何人いますか? 属性、属性 ID はユーザー テーブルのフィールドに保存されます
たとえば、user_attr、値の保存形式は次のとおりです: '3,4,5,2',
説明: たとえば、数値は属性 IDです。
ここで、フロントエンドは複数の属性を持つユーザーを同時にクエリする必要があります。
属性 ID が次から渡された場合、フロントエンドはクエリを実行する必要があり、形式は次のとおりです: '3,5'、文字列の形式
クエリはどのように記述すればよいですか? 私は thinkphp5 を使用します。
find_in_set() 詳細はこちら
like正解
ここでは SQL クエリを使用する必要はありません。フロントエンドから渡された 3,5 を配列 [3,5] に変換し、さらに 3,4,5,2 も配列に変換します。彼らはその中にいます。
3 と 5 を配列に変換し、ループし、条件、'%3%' のような user_attr または '%5%' のような user_attr をユーザー ID でグループ化しますか? 効率はそれほど高くないかもしれませんが、達成できます