用戶表权限字段A VARCHARuser1:“2,32,22,11”user2:“15,17”user3:“15,2”user4:“1,16,14”
接下來需要查找权限字符串中出现 2或11或16 的用戶 然后系統給出了查询字符串“2,11,16”结果应该包括:user1 user3 user4能否使用這個系統給出的字符串 找出來正確的結果呢
接下來需要查找权限字符串中出现 2或11或16 的用戶 然后系統給出了查询字符串“2,11,16”结果应该包括:user1 user3 user4能否使用這個系統給出的字符串 找出來正確的結果呢
uid 权限字段A
user1 | '2,32,22,11'
user2 | '15,17'
user3 | '15,2'
user4 | '1,16,14'已知输入字符串 '2,11,16'没有办法直接用一个SQL语句实现 ,除非你输入字符串固定为固定数目比如三个或以下。
首先利用你的程序把 '2,11,16' 变成 2 , 11 , 16 三个字符串,然后逐一查找。select * from your Table where concat(',',权限字段A,',') like '%,2,%'
union
select * from your Table where concat(',',权限字段A,',') like '%,11,%'
union
select * from your Table where concat(',',权限字段A,',') like '%,16,%'