mysql 怎么查询一个字段对应的多个值

 我来答
datahelpme
推荐于2017-09-23
知道答主
回答量:4
采纳率:0%
帮助的人:6万
展开全部
in(v1,v2..vn) ,符合v1,v2,,,vn才能被查出
IN关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该纪录将被查询出来。如果不在集合中,则不满足查询条件。其语法规则如下:[ NOT ] IN ( 元素1, 元素2, …, 元素n )

例如:

select * from STUDENT where STU_AGE in(11,12);
关印枝胡巳
2019-11-08 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:28%
帮助的人:941万
展开全部
请参见下列mysql实验:
--
生成orderproduct表
create
table
orderproduct(orderid
char(11)
primary
key,productid
varchar(255));
--
product表
create
table
product(productid
varchar(10)
primary
key,productname
varchar(50));
--
向订单表插入数据
insert
into
orderproduct
values
(20161116001,'d0020'),
(20161116035,'e0055'),
(20161101048,'a0035'),
(20161005321,'b0049'),
(20160901515,'c0038'),
(20160814525,'c0038,a0035,e0055'),
(20160714510,'d0020,b0049');
--
向产品表插入数据
insert
into
product
values
('d0020','立顿牌绿茶'),
('e0055','越南小面包'),
('a0035','珠宝台历'),
('b0049','护手霜'),
('c0038','运动水壶');
select
*
from
orderproduct;
select
*
from
product;
--
返回第一问的sql语句
select
a.orderid,min(a.productid)
as
productid,
group_concat(b.productname)
as
productname
from
orderproduct
a,product
b
where
b.productname
in
('运动水壶','珠宝台历','越南小面包')
and
instr(a.productid,b.productid)>0
group
by
a.orderid;
--
返回第二问的sql语句
select
a.orderid,min(a.productid)
as
productid,
group_concat(b.productname)
as
productname
from
orderproduct
a,product
b
where
b.productname
in
('立顿牌绿茶','护手霜')
and
instr(a.productid,b.productid)>0
group
by
a.orderid;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式