中国网管论坛's Archiver

xiaoyao_wang 发表于 2006-10-17 10:23

求解SQL

我要求一解SQL

我有两张表    一张A表 一张B表  
A表中有a字段和表B中的a字段是相同的,现在我要通过A表去取B表中的 d e f g 等其他字段,我想求解SQL语句,我是菜鸟,请大家帮帮我

whidbey 发表于 2006-10-17 15:01

select d,e,f,g from B where a in (select a from A);

cckill555 发表于 2006-10-19 20:05

支持版主!!!!!!!!!

我也来一解:

Select b.* from a,b where a.a=b.a

shkuan 发表于 2006-10-20 11:50

:victory:

liming566 发表于 2007-2-6 10:47

回复 #1 xiaoyao_wang 的帖子

一楼用子查询,二楼写的什么东西我不知道,又不象多表连接。楼主给的题目也没任何意义,就你这个题目而言,你既然呀查询b表中的defg为什么要通过a表呢,直接select d,e,f,g from b不就ok了。所以请你下次把你的意思说清楚点,就向写程序一样,写程序不是给自己看的,是给别人看的。

   我这里建立两张表给你演示一下,我建两张表,一张学生信息表(info),保存学号(sno),姓名(sname)性别(ssex),一张成绩表(cno)保存学员选修课程(ccno)和学号(sno)
create table info
(
  sno int primary key,
  ssex char(4) check(ssex='男' or ssex='女'),
  sname varchar(20) not null
)

create table cno
(
  sno foreign key references a(sno),
  ccno varchar(10),
)
在这里插入一些数据,插入A,B,C,D四中选修课程,现在要查询选修了A课程的学员的信息
select *from info where sno in(select sno from cno where cno ='A')
或者
select info.sno sname,ssex from cno inner join cno
on info.sno=cno.sno

页: [1]

Powered by Discuz! Archiver 6.1.0  © 1999-2008 bbs.bitsCN.com