简述MySQL 的in 的两种使用方法:

他们各自是在 in keyword后跟一张表(记录集)。以及在in后面加上字符串集。

先讲后面跟着一张表的。


首先阐述三张表的结构:

s(sno,sname.sex,age,dept)   //学生信息表

c(cno,cname,tname)      //课程信息表

sc(sno,cno,grade)              //课程选修信息表

update sc set grade = 0 where sc.cno in (select cno from c where c.cname = '物理') and sc.grade < 60; 比方说这条sql语句 ,这条sql语句是将课程为物理的不及格的分数设定为0分。

这个样例里的in后面就跟着一张由select语句 产生的一张暂时表。


好,那么如今再来看以下的in后面跟着一个字符串集。事实上也不见得非得是字符串集。

select * from s where sname in ('aaa','bbb','ccc');