Chinaunix首页 | 论坛 | 博客
  • 博客访问: 319704
  • 博文数量: 240
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 50
  • 用 户 组: 普通用户
  • 注册时间: 2016-08-04 18:14
文章分类

全部博文(240)

文章存档

2017年(8)

2014年(4)

2013年(15)

2012年(4)

2011年(14)

2010年(55)

2009年(140)

我的朋友

分类: LINUX

2009-06-04 02:14:35

1. 拷贝表(拷贝数据,源表名:A(a,b,c) 目标表名:B)

   将A表中NAME,SEX字段插入B表(B表有三个字段分别是CHARNAME,CHARSEX,STAT(默认值:0))

2. 复制表(只复制结构,源表名:A(a,b,c) 新表名:B) ,并向B中插入一条记录1,2,3

3. 有两个表A和B,均有key和value两个字段,
(1)查询A中所有key在B中对应的value(没有用0代替)
(2)如果B的key在A中也有,就把B的value换成A中对应的value

4. 表 A(ID,Name),查询表A中存在ID重复三次(包括三次)以上的记录

5.学生成绩表A
Name kecheng fenshu
张三 语文 81
张三 数学 95
张三 英语 80
李四 语文 75
李四 数学 80
李四 英语 65
王五 语文 42
王五 数学 65
王五 英语 55
…….

(1)用一条SQL语句,查询出每门课都大于80分的学生姓名
(2)转化成以下表(60以下:不及格,60-70 及格,70-80 中,80-90良,90以上 优)
Name pingjunfen kaohe
张三 85 良
李四 73 中
王五 54 不及格
……

 
6.学生表 A
IDX NO NAME KCNO(课程编号) KCNAME(课程名称) fenshu(分数)
1 2005001 张三 0001 数学 69
2 2005002 李四 0001 数学 89
3 2005001 张三 0001 数学 69
……
删除除了自动编号不同,其他都相同的学生冗余信息

 
7.两个结构相同的表A,B(栏位a,b,c)
(1)查询同时存在A和B中的记录
(2)查询存在A中,不存在B中的记录
 


8.玩家登陆表A,登陆一次有一条记录(Id, Logintime)
查询上周内(假设现在时间为周一0点)玩家和玩家登陆次数以及最后登陆日期


9. 本地服务器A,数据库 ADB,表 A1(name)
远程服务器B,数据库 BDB,帐号表B1(ID, name, playtime, logintime, lastip),基本信息表B2 (id, name, lev, gd, guildno), 公会表B3(guildno, guildname),装备表B4(id, data),技能表B5(id, data)

查询出A1中玩家name含有moliyo的所有相关信息(本地数据库用户有能连接远程数据库的权限)

 

 

 
 
 
 
 
 

答案:

 

1. mysql> Select * into B from A

mysql> select * into B from A where 1<>1
mysql> insert into B from select name,sex,0 from A;
   
2. mysql> create table admin as (select * from bookinfo.admin);

   Insert into B values(1,2,3)

3.(1)Select A.key,isnull(B.value,0)
     From A
     Left join B on A.key=B.key
  (2)Update B set B.value=A.value
     From A,B where A.key=B.key

4.Select * From A Where ID in (select id from A Group by ID having count(name)>=3)

5.(1)Select * from A where name not in (select name from A where fenshu<80)
  (2)Select name,avg(fenshu) as pingjunfen,
     case when avg(fenshu)<60 then '不及格'
     when avg(fenshu)>=60 and avg(fenshu)<70 then '及格'
     when avg(fenshu)>=70 and avg(fenshu)<80 then '中'
     when avg(fenshu)>=80 and avg(fenshu)<90 then '良'
     when avg(fenshu)>=90 then '优秀' end as kaohe
     From A
     Group by name

6.Delede From A
  Where IDX not in (Select min(ID) group by NO,NAME,KCNO,KCNAME,FENSHU)

7.(1)Select * From A,B
     Where A.a=B.a and A.b=B.b and A.c=B.c
  (2)Select A.* From A
     Left join B on A.a=B.a and A.b=B.b and A.c=B.c
     where B.a is null
     

8.Select ID,count(Logintime) AS count,max(Logintime) AS LastLogintime
  From A where Logintime>=convert(char(10),dateadd(dd,-7,getdate()),20)
  And Logintime<getdate()

9.Select B1.ID,A1.Name,B1.Logintime,B1.playtime,B1.LastIP,
  B2.Lev,B2.GD,B2.guildno,B3.guildname,
  B4.data AS data1,B5.data AS data2
  From A1
  Inner join B.BDB.DBO.B1 on A1.name=B1.name
  Inner join B.BDB.DBO.B2 on B1.ID=B2.ID
  Inner join B.BDB.DBO.B3 on B2.guildno=B3.guildno
  Inner join B.BDB.DBO.B4 on B1.ID=B4.ID
  Inner join B.BDB.DBO.B5 on B1.ID=B5.ID
  Where A1.name like '%moliyo%'

阅读(963) | 评论(2) | 转发(0) |
0

上一篇:find 精华应用

下一篇:cookie和session

给主人留下些什么吧!~~

chinaunix网友2010-06-08 07:53:34

你的空间好玩的东西挺多的,学习中……

chinaunix网友2010-06-08 07:51:04

你的空间好玩的东西挺多的,学习中……