SQL语言小问题求解

来源:百度知道 编辑:UC知道 时间:2024/05/17 21:22:00
本人初学者,有个小问题:
比如1个学生同时选了2个课程,武术和绘画,要选出他的名字.
用where选课名='武术'and选课名='绘画' 不行啊
请问满足同一列2个条件的语句该怎么写啊
你说的还是不行啊.返回:
子查询返回的值多于一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。

呵呵,当然不行
要这样写
select name
from table
where 选课名='武术'and name = (select name from table where 选课名='绘画')
这就是选了武术和绘画的人,

呵呵,我写错了,把=改成 in 就行了
select name
from table
where 选课名='武术'and name in (select name from table where 选课名='绘画')

select a.name from tablename a,tablename b
where a.选课名='武术' and b.选课名='绘画' and a.name=b.name
选修了指定的两门课的学生.

where选课名='武术' OR 选课名='绘画'

用OR(或-两者满足一个就行了) 不是AND(与-两者需同时满足)

大魔法师的思路是对的;我试过了;我就不些语句了;不和他抢分

一个字段怎么可能,同时等于两个条件??? 玩闹呢???