我的数据集包含两个字段 Main_Activity 和 Requesting_Activity
样本数据集"
Main_activity Reuesting_Activity ------------- ------------------ Act1 Act1,Act1a,Act2,Act3 Act2 Act1a,Act3,Act5 Act3 Act1,Act3,Act4 Act4 Act2,Act4,Act5
当我使用SQL查询并将 Act1 作为参数(@ mainActivity)传递给数据集时
SELECT DISTINCT Main_Activity, Requesting_Activity FROM Activity_table WHERE Requesting_Activity LIKE ''+ (@mainActivity) +'' OR Requesting_Activity LIKE ''+ (@mainActivity) +',%' OR Requesting_Activity LIKE '%,'+ (@mainActivity) +',%' OR Requesting_Activity LIKE '%,'+ (@mainActivity) +''
我得到了预期的输出
Act1 Act3
问题是当我将参数设置为多选时,我收到错误。 我该如何解决?如何使用" LIKE和" IN"同一个查询中的运算符?
答案 0 :(得分:1)
你的where子句充满了裁员
WHERE Requesting_Activity LIKE '%'+ (@mainActivity) +'%'