经典的SQL语句

经典的SQL语句

1. 拷贝表(拷贝数据,源表名:A(a,b,c) 目标表名:B)
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. Select * into B from A
mysql> create table admin as (select * from bookinfo.admin);
   
2. select * into B from A where 11
   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=60 and avg(fenshu)=70 and avg(fenshu)=80 and 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
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%'

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/93470/showart_1954136.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值