假設一個問卷的在線答題問卷可以設置答題人所屬部門的id列表,假設為 ?1,2,3,5,6(部門id是1,2,3,5,6的人可以答題)職員可以屬于多個部門,也可以有所屬部門的id列表,假設為6,7,8那么我現在要查詢出能夠有權限答題的職員的集合,該怎么來寫這個sql。select * from staff where pardment ?= 1 or padment like %,1,% or pardment like %,1% or pardment like %1,%主要是如果只用一個like的話 ? 1可能會同時匹配到12,13,14,15而且職員也可以屬于多個部門。 ??簡化的sql該如何寫?
3 回答

產品經理不是經理
TA貢獻481條經驗 獲得超143個贊
select?*?from?staff? where?concat(',',department_id_list,',')? regexp?( ????select?concat(',(',replace(q.department_id_list,',','|'),'),')?from?question?q ????where?question_naire_id='xxx' );
添加回答
舉報
0/150
提交
取消