| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 602 人关注过本帖
标题:请问下面的SQL语句怎么写?
收藏  订阅  推荐  打印 
KRZS2005
Rank: 1
等级:新手上路
帖子:1
积分:110
注册:2006-5-16
请问下面的SQL语句怎么写?

1. 有两个表
表A(varchar(32) NAME,int GRADE)
数据:
ZHANGSHAN 80
LISI 60
WANGWU 84

表B(varchar(32) NAME,int AGE)
数据:
ZHANGSHAN 26
LISI 24
WANGWU 26
WUTIAN 26

写SQl语句根据名字(NAME)相同按年龄(AGE)分组得到不同年龄的人的平均成绩,并写出结果。


2. 有一个数据库表dept中有如下数据:
id_no id_name
1000 S1
1001 S2
1002 S3
1003 S4
1000 S5
1000 S6
1001 S7

表中有id_no重复,如id_no为1000的有3条记录,如id_no为1001的有2条记录, 现在要按照id_no给表建索引,需要删除id_no重复了的那些记录,但不能删掉所但不能删掉所有拥有该id_no的记录,必需保留一条拥有该id_no的记录(如id_no为1000的只剩下一条记录)
(1)请写出SQl语句(或SQL语句组),查询所有id_no重复的记录。
(2)请写出SQl语句实现题目要求的结果,即只保留一条拥有该id_no的记录,删除其他id_no重复的记录.
搜索更多相关主题的帖子: SQL  语句  
2006-5-16 13:03
hsjljh
Rank: 2
等级:注册会员
帖子:56
积分:664
注册:2005-10-26

create table tableA
(
name varchar(32),
grade int
);

create table tableB
(
name varchar(32),
age int
);

insert into tableA values('zhangshan',80);
insert into tableA values('lisi',60);
insert into tableA values('wangwu',84);

insert into tableB values('zhangshan',26);
insert into tableB values('lisi',24);
insert into tableB values('wangwu',26);
insert into tableB values('wutian',26);

select age,avg(grade) from tableA,tableB
where tableA.name=tableB.name
group by age;

呵呵 不知道对不对啊
是第一题

2006-5-16 17:32
hsjljh
Rank: 2
等级:注册会员
帖子:56
积分:664
注册:2005-10-26


(1)select id_no from dept;
(2)create UNIQUE index index_id_no
on dept(id_no,id_name);

第二题
2006-5-16 19:17
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.050219 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved