以下のような状況があります。
PlanID StateID
1 22
2 22
2 30
3 7
3 22
3 33
3 46
4 22
5 22
12 22
13 7
13 22
13 30
13 33
13 40
13 46
14 22
15 7
15 20
15 22
15 30
15 33
15 40
15 46
16 22
17 7
17 20
17 22
17 30
17 40
ユーザーが UI から SQL クエリに stateID を送信するとき、共通の PlanID を出力として見つける必要があります。UI から送信される stateID の数はわかりません (ユーザーのチェックボックス リストの選択に完全に依存するため)。
したがって、ユーザーが 22 と 7 を送信する場合、o/p は 3,13,15,17 である必要があります。ユーザーが 22,20,7 を送信する場合、o/p は 15,17 である必要があります。
これまでに取得したクエリは次のとおりです。
select a.*, b.* from
Plan_State a
Inner join Plan_State b
ON a.PlanID = b.PlanID
WHERE
(
a.StateID =22
) AND
(
b.StateID=7
)
しかし、ユーザーが 2 つ以上の状態 ID を送信した場合はどうなりますか。そして 1 つの小さなメモは、私の状態 ID リストが文字列 (22,7,20 のように) として入ってくることです。
ありがとう