经典的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