根据从一个表的查询结果再去另一个表查询,得到我想要的。
如表A:name,id;表B:name,class
我现在给出一个id,要查询到对应的class,一句sql查询语句能搞定吗?
谢谢,如果表B中的name字段名与表A不同,该怎么查?
如表A:name,id;表B:namename,class
namename 对应 name
第1个回答 推荐于2016-02-29
SELECT class
FROM B WHERE name = (select name from A where id = xxxx)即可
如果一个id对应多个name
SELECT class
FROM B WHERE name IN (select name from A where id = xxxx)追问
FROM B WHERE name = (select name from A where id = xxxx)即可
如果一个id对应多个name
SELECT class
FROM B WHERE name IN (select name from A where id = xxxx)追问
谢谢,如果表B中的name字段名与表A不同,该怎么查?
如表A:name,id;表B:namename,class
那要看你之间具体怎么关联了。如果只是字段不同,一样的
SELECT class
FROM B WHERE namename IN (select name from A where id = xxxx)
第2个回答 2011-03-09
select B.class
from A JOIN B ON A.name=B.namename
where A.id=xxx;
from A JOIN B ON A.name=B.namename
where A.id=xxx;
第3个回答 2011-03-09
如果名字都不同了 那么A表和B表之间数据的关系如何得知? 必须有关联关系才能查询的 你得把具体关系说明白了
第4个回答 2011-03-09
错误回答不处理,不能回答了~~~~