sql查询字段中所有等于某些值的数据 100

表中有channel_id有多个值,每个值对应的app_id也有多个,现在需要的功能是:前台提交了多个app_id的值,要求能查询同时具有着些app_id的值的chann... 表中有channel_id有多个值,每个值对应的app_id也有多个,现在需要的功能是:前台提交了多个app_id的值,要求能查询同时具有着些app_id的值的channel_id,该怎么写 展开
 我来答
badkano
2017-07-20 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885371
团长

向TA提问 私信TA
展开全部

不知道这样可以不,看你的数据库应该是mysql

创建表插入数据

create table test
(channel_id int,
app_id varchar(10));


insert into test values (1,'a001');
insert into test values (2,'a001');
insert into test values (2,'a002');
insert into test values (3,'a002');
insert into test values (4,'a002');
insert into test values (3,'a003');
insert into test values (4,'a003');
insert into test values (5,'a003');
insert into test values (6,'a003');
insert into test values (7,'a004');

执行:

SELECT
app_id,
group_concat(channel_id)
FROM
test
WHERE
channel_id IN (1, 2, 3, 4, 5, 6, 7)
GROUP BY
app_id

结果:

看结果的话,就能看出每个app_id对应了哪些channel_id了,然后想筛选多个的话,直接嵌套一层,然后like '%,%'就可。

apqler
2017-07-20 · TA获得超过328个赞
知道小有建树答主
回答量:206
采纳率:0%
帮助的人:119万
展开全部
select * from table where app_id in(前台传的参数)
追问
这样查询出来的数据,并不是与,而是或的,该怎么修改
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式