This topic has been archived. It cannot be replied.
-
工作学习 / IT技术讨论 / 头疼,这个SQL语句怎么写?设有人员表 A 和 家庭成员表 B
表A的结构 字段名 含义
a 编号
b 姓名
c 性别,0表示男, 1表示女
d 年龄
表B的结构 字段名 含义
a 人员编号
b 人员编号
c a与b的关系
(0 表示夫妻关系, a为夫,b为妻)
(1 表示父母子女关系,a为父母,b为子女)
1〕写一个SQL语句,列出每个人姓名和他(她)的子女数量(包括没有子女的人)
2) 写一个SQL语句,能够列出所有夫妻年龄相加超过50岁的家庭中的丈夫名字。
-writesome(penwrite);
2003-9-2
{385}
(#1353742@0)
-
select count(B.a) namecount, A.b from B, A WHERE B.a = A.a GROUP BY B.a HAVING B.c = 1; //估计问题一是这样子
-hillman(山大王);
2003-9-2
(#1353765@0)
-
一个解:1)select A.b, sum(B.c) from A LEFT OUTER JOIN B on A.a = B.a group by A.a; 2)select A1.b from B, A as A1, A as A2 where B.a = A1.a and B.b = A2.a and B.c = '0' and A1.d + A2.d > 50
-bingle(bingle);
2003-9-2
(#1353797@0)
-
多谢,可我照此SQL在ACCESS上试运行,怎么不行啊,
-writesome(penwrite);
2003-9-2
(#1353835@0)
-
在Access中给你试了一下,1)改成...group by A.b;
-bingle(bingle);
2003-9-2
(#1354361@0)
-
你的两个答案缺条件,再检查一下?
-guestagain(guest again);
2003-9-2
(#1354393@0)
-
谢谢,第一个在ACCESS中没问题了,第二个好象还不行,再帮俺看看。
-writesome(penwrite);
2003-9-4
(#1356155@0)